13 TopLink Exception Reference
This chapter lists the TopLink exception error codes, information about the likely cause of the problem and a possible corrective action. Each exception code corresponds to an exception class and includes the following information:
-
The exception number in the format, EXCEPTION [TOPLINK-
XXXX
]
-
A description of the problem, taken from the raised exception
This chapter contains information on the following exceptions:
Descriptor Exceptions (1 – 201)
DescriptorException
is a development exception that is raised when insufficient information is provided to the descriptor. The message that is returned includes the name of the descriptor or mapping that caused the exception. If a mapping within the descriptor caused the error, then the name and parameters of the mapping are part of the returned message, as shown in Example 13-1.
Internal exception, mapping and descriptor appear only if TopLink has enough information about the source of the problem to provide this information.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
INTERNAL EXCEPTION: Message
MAPPING: Database mapping
DESCRIPTOR: Descriptor
Example 13-1 Descriptor Exception
EXCEPTION [TOPLINK – 75]: oracle.toplink.exceptions.DescriptorException
EXCEPTION DESCRIPTION: The reference class is not specified.
- 1: ATTRIBUTE_AND_MAPPING_WITH_INDIRECTION_ MISMATCH
-
Cause: attributeName
is not declared as type ValueHolderInterface
, but the mapping uses indirection. The mapping is set to use indirection, but the related attribute is not defined as type ValueHolderInterface
. It is raised on foreign reference mappings.
-
Action: If you want to use indirection on the mapping, change the attribute to type ValueHolderInterface
. Otherwise, change the mapping associated with the attribute so that it does not use indirection.
- 2: ATTRIBUTE_AND_MAPPING_WITHOUT_INDIRECTION_ MISMATCH
-
Cause: attributeName
is declared as type ValueHolderInterface
, but TopLink is unable to use indirection. The attribute is defined to be of type ValueHolderInterface
, but the mapping is not set to use indirection. It is raised on foreign reference mappings.
-
Action: If you do not want to use indirection on the mapping, change the attribute so it is not of type ValueHolderInterface
. Otherwise, change the mapping associated with the attribute to use indirection.
- 6: ATTRIBUTE_NAME_NOT_SPECIFIED
-
Cause: The attribute name is missing or not specified in the mapping definition.
-
Action: Specify the attribute name in the mapping by calling the method setAttributeName(String attributeName)
.
- 7: ATTRIBUTE_TYPE_NOT_VALID
-
Cause: When using Java 2, the specified attributeName
is not defined as type vector
, or a type that implements the Map
or Collection
interface. This occurs in one-to-many mapping, many-to-many mapping, and collection mapping when mapping is set not to use indirection, and the attribute type is not declared.
-
Action: Declare the attribute to be of type java.util.Vector
.
- 8: CLASS_INDICATOR_FIELD_NOT_FOUND
-
Cause: The class indicator field is defined, but the descriptor is set to use inheritance. When using inheritance, a class indicator field or class extraction method must be set. The class indicator field is used to create the right type of domain object.
-
Action: Set either a class indicator field or class extraction method.
- 9: DIRECT_FIELD_NAME_NOT_SET
-
Cause: The direct field name from the target table is not set in the direct collection mapping.
-
Action: Specify the direct field name by calling the method setDirectFieldName(String fieldName)
.
- 10: FIELD_NAME_NOT_SET_IN_MAPPING
-
Cause: The field name is not set in the mapping. It is raised from direct to field mapping, array mapping, and structure mapping.
-
Action: Specify the field name by calling the method setFieldName(String fieldName)
.
- 11: FOREIGN_KEYS_DEFINED_INCORRECTLY
-
Cause: One-to-one mapping foreign key is defined incorrectly. Multiple foreign key fields were set for one-to-one mapping by calling the method setForeignKeyFieldName(String fieldName)
.
-
Action: Use the method addForeignKeyFieldName(String sourceForeignKeyName
, String targetPrimaryKeyFieldName)
to add multiple foreign key fields.
- 12: IDENTITY_MAP_NOT_SPECIFIED
-
Cause: The descriptor has been set not to use identity map, but the existence checking is set to be performed on identity map: the descriptor must use an identity map to use the Check cache does exist option.
-
Action: Either use identity map, or set the existence checking to some other option.
- 13: ILLEGAL_ACCESS_WHILE_GETTING_VALUE_THRU_ INSTANCE_VARIABLE_ACCESSOR
-
Cause: TopLink is unable to access the attributeName
instance variable in object objectName
. The instance variable in the domain object is not accessible. This exception is raised when TopLink tries to access the instance variable using the java.lang.reflect
Java package. The error is a purely Java exception, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 14: ILLEGAL_ACCESS_WHILE_CLONING
-
Cause: TopLink is unable to clone the object domainObject
because the clone method methodName
is not accessible. The method name specified using useCloneCopyPolicy(String cloneMethodName)
or the clone()
method to create the clone on the domain object, is not accessible by TopLink using Java reflection. The error is a purely Java exception, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 15: ILLEGAL_ACCESS_WHILE_CONSTRUCTOR_INSTANTIATION
-
Cause: The domain class does not define a public default constructor, which TopLink needs to create new instances of the domain class.
-
Action: Define a public default constructor or use a different instantiation policy.
- 16: ILLEGAL_ACCESS_WHILE_EVENT_EXECUTION
-
Cause: The descriptor callback method eventMethodName
with DescriptorEvent
as an argument is not accessible. This exception is raised when TopLink tries to access the event method using Java reflection. The error is a purely Java exception, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 17: ILLEGAL_ACCESS_WHILE_GETTING_VALUE_THRU_ METHOD_ACCESSOR
-
Cause: Attempt to invoke inaccessible methodName
on the object objectName
. The underlying getter method to access an attribute in the domain object is not accessible. This exception is raised when TopLink tries to access an attribute through a method using the java.lang.reflect
Java package. The error is a purely Java exception, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 18: ILLEGAL_ACCESS_WHILE_INSTANTIATING_METHOD_ BASED_PROXY
-
Cause: The method used by the transformation mapping using a value holder is invalid. This exception is raised when TopLink tries to access the method using Java reflection. The problem occurs when the method base valueholder is instantiated.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 19: ILLEGAL_ACCESS_WHILE_INVOKING_ATTRIBUTE_METHOD
-
Cause: On transformation mapping, the underlying attribute method that is used to retrieve values from the database row while reading the transformation mapped attribute is not accessible.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 20: ILLEGAL_ACCESS_WHILE_INVOKING_FIELD_TO_METHOD
-
Cause: On transformation mapping, the method methodName
that is used to retrieve value from the object while writing the transformation mapped attribute is not accessible. The error is a purely Java exception, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 21: ILLEGAL_ACCESS_WHILE_INVOKING_ROW_EXTRACTION_ METHOD
-
Cause: TopLink is unable to extract data row
, because TopLink cannot access the row specified in the databaseRow
argument of the method. The method to extract class from row on the domain object is not accessible. The error is a purely Java exception, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 22: ILLEGAL_ACCESS_WHILE_METHOD_INSTANTIATION
-
Cause: TopLink is unable to create a new instance, because the method methodName
that creates instances on the domain class is not accessible. The error is a purely Java exception, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 23: ILLEGAL_ACCESS_WHILE_OBSOLETE_EVENT_EXECUTION
-
Cause: The descriptor callback method eventMethodName
with Session
as an argument is inaccessible. This exception is raised when TopLink tries to access the event method using Java reflection. The error is a purely Java exception, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 24: ILLEGAL_ACCESS_WHILE_SETTING_VALUE_THRU_ INSTANCE_VARIABLE_ACCESSOR
-
Cause: The attributeName
instance variable in the object objectName
is not accessible through Java reflection. The error is raised by Java, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 25: ILLEGAL_ACCESS_WHILE_SETTING_VALUE_THRU_ METHOD_ACCESSOR
-
Cause: TopLink is unable to invoke a method setMethodName
on the object with parameter parameter
. The attribute's set accessor method is not accessible through Java reflection. The error is raised by Java and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 26: ILLEGAL_ARGUMENT_WHILE_GETTING_VALUE_ THRU_INSTANCE_VARIABLE_ACCESSOR
-
Cause: TopLink is unable to get a value for an instance variable attributeName
of type typeName
from the object. The specified object is not an instance of the class or interface declaring the underlying field. An object is accessed to get the value of an instance variable that does not exist.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 27: ILLEGAL_ARGUMENT_WHILE_GETTING_VALUE_THRU_ METHOD_ACCESSOR
-
Cause: TopLink is unable to invoke method methodName
on the object objectName
. The get accessor method declaration on the domain object differs from the one that is defined. The number of actual and formal parameters differ, or an unwrapping conversion has failed.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 28: ILLEGAL_ARGUMENT_WHILE_INSTANTIATING_METHOD_ BASED_PROXY
-
Cause: The method that the method-based proxy uses in a transformation mapping is receiving invalid arguments when the valueholder is being instantiated. This exception is raised when TopLink tries to access the method using the java.lang.reflect
Java package.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 29: ILLEGAL_ARGUMENT_WHILE_INVOKING_ATTRIBUTE_ METHOD
-
Cause: The number of actual and formal parameters differs, or an unwrapping conversion has failed. On transformation mapping, the method used to retrieve values from the database row while reading the transformation mapped attribute is getting an invalid argument.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 30: ILLEGAL_ARGUMENT_WHILE_INVOKING_FIELD_TO_ METHOD
-
Cause: The number of actual and formal parameters differs for method methodName
, or an unwrapping conversion has failed. On transformation mapping, the method used to retrieve value from the object while writing the transformation mapped attribute is getting an invalid argument. The error is a purely Java exception, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 31: ILLEGAL_ARGUMENT_WHILE_OBSOLETE_EVENT_ EXECUTION
-
Cause: The number of actual and formal parameters for the descriptor callback method eventMethodName
differs, or an unwrapping conversion has failed. The callback event method is invoked with an invalid argument. This exception is raised when TopLink tries to invoke the event method using Java reflection. The error is a purely Java exception, and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 32: ILLEGAL_ARGUMENT_WHILE_SETTING_VALUE_THRU_ INSTANCE_VARIABLE_ACCESSOR
-
Cause: An invalid value is being assigned to the attribute instance variable. TopLink is unable to set a
value
for an instance variable
attributeName
of type
typeName
in the object. The specified object is not an instance of the class or interface that is declaring the underlying field, or an unwrapping conversion has failed.
TopLink assigns value by using Java reflection. Java raises the error and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 33: ILLEGAL_ARGUMENT_WHILE_SETTING_VALUE_THRU _METHOD_ACCESSOR
-
Cause: An illegal argument is being passed to the attribute's set accessor method. TopLink is unable to invoke method setMethodName
on the object. The number of actual and formal parameters differs, or an unwrapping conversion has failed. Java raises the error and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 34: INSTANTIATION_WHILE_CONSTRUCTOR_INSTANTIATION
-
Cause: The class does not define a public default constructor, or the constructor raised an exception. This error occurs when you invoke the default constructor for the domain object to create a new instance of the object while building new domain objects if:
-
The class represents an abstract class, an interface, an array class, a primitive type, or void.
-
The instantiation fails for some other reason.
Java raises the error and TopLink wraps only the reflection exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 35: INVALID_DATA_MODIFICATION_EVENT
-
Cause: Applications should never encounter this exception. This exception usually occurs at the time of developing TopLink, although in cases, where you write new mapping, it is possible to get this exception. In direct collection mapping and many-to-many mapping, the target table and relational table are populated at the end of the commit process, and if a data modification event is sent to any other mapping, then this exception is raised.
-
Action: Contact Oracle Support Services.
- 36: INVALID_DATA_MODIFICATION_EVENT_CODE
-
Cause: An application should never encounter this exception. This exception usually occurs at the time of developing TopLink, although in cases, where you write new mappings, it is possible to get this exception. In direct collection mapping and many-to-many mapping, the target table and relational table are populated at the end of the commit process, and if a data modification event is sent to these two mappings with wrong event code, then this exception is raised.
-
Action: Contact Oracle Support Services.
- 37: INVALID_DESCRIPTOR_EVENT_CODE
-
Cause: An application should never encounter this exception. This exception usually occurs at the time of developing TopLink. The exception means that the descriptor event manager does not support the event code passed in the event.
-
Action: Contact Oracle Support Services.
- 38: INVALID_IDENTITY_MAP
-
Cause: The identity map constructor failed because an invalid identity map was specified. The identity map class given in the descriptor cannot be instantiated. The exception is a Java exception that is raised by a Java reflection when TopLink instantiates the identity map class. TopLink wraps only the Java exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 39: JAVA_CLASS_NOT_SPECIFIED
-
Cause: The descriptor does not define a Java class. The Java class is not specified in the descriptor.
-
Action: Specify the Java class.
- 40: DESCRIPTOR_FOR_INTERFACE_IS_MISSING
-
Cause: A descriptor for the referenced interface is not added to the session.
-
Action: Add that descriptor to the session.
- 41: MAPPING_FOR_SEQUENCE_NUMBER_FIELD
-
Cause: A non-read-only mapping is not defined for the sequence number field. A mapping is required so that TopLink can put and extract values for the primary key.
-
Action: Define a mapping.
- 43: MISSING_CLASS_FOR_INDICATOR_FIELD_VALUE
-
Cause: TopLink is missing the class for indicator field value classFieldValue
of type type
. There was no class entry found in the inheritance policy for the indicator field value that was read from the database. It is likely that the method addClassIndicator(Class class, Object typeValue)
was not called for the field value. The class and typeValue
are stored in a hash table, and later the class is extracted from the hash table by passing typeValue
as a key. Because Integer(1)
is not equivalent to Float(1)
, this exception occurs when the type of typeValue
is incorrectly specified.
-
Action: Verify the descriptor.
- 44: MISSING_CLASS_INDICATOR_FIELD
-
Cause: The class indicator field is missing from the database row
that was read from the database. This is performed in the inheritance model where after reading rows from the database, child domain objects are to be constructed depending upon the type indicator values.
-
Action: Verify the printed row for correct spelling.
- 45: MISSING_MAPPING_FOR_FIELD
-
Cause: TopLink is missing a mapping for field
; a mapping for the field is not specified.
-
Action: Define a mapping for the field.
- 46: NO_MAPPING_FOR_PRIMARY_KEY
-
Cause: A mapping for the primary key is not specified. There should be one non-read-only mapping defined for the primary key field.
-
Action: Define a mapping for the primary key.
- 47: MULTIPLE_TABLE_PRIMARY_KEY_NOT_SPECIFIED
-
Cause: The multiple table primary key mapping is not specified when a custom multiple table join is used. If multiple tables are specified in the descriptor and the join expression is customized, then the primary keys for all the tables must be specified. If the primary keys are not specified, then the exception occurs.
-
Action: Call the method addMultipleTablePrimaryKeyFieldName(String fieldNameInPrimaryTable, String fieldNameInSecondaryTable)
on the descriptor to set the primary keys.
- 48: MULTIPLE_WRITE_MAPPINGS_FOR_FIELD
-
Cause: Multiple writable mappings for the field
fieldName
are defined in the descriptor. Exactly one must be defined as writable; the others must be specified as read-only. When multiple write mappings are defined for the field, TopLink is unable to choose the appropriate mapping for writing the value of the field in the database row. Therefore, the exception is raised during the validation process of descriptors.
The most common cause of this problem is when the field has direct-to-field mapping, as well as one-to-one mapping. In this case, the one-to-one mapping must either be read-only or a target foreign key reference.
-
Action: Make one of those mappings read-only.
- 49: NO_ATTRIBUTE_TRANSFORMATION_METHOD
-
Cause: The attribute transformation method name in the transformation mapping is not specified. This method is invoked internally by TopLink to retrieve value to store in the domain object.
-
Action: Define a method and set the method name on the mapping by calling the method setAttributeTransformation(String methodName)
.
- 50: NO_FIELD_NAME_FOR_MAPPING
-
Cause: No field name is specified in direct-to-field mapping.
-
Action: Set the field by calling setFieldName(String fieldName)
.
- 51: NO_FOREIGN_KEYS_ARE_SPECIFIED
-
Cause: Neither the selection criteria nor the foreign keys were specified on one-to-one mapping. If the selection criterion is not specified, then TopLink tries to build one from the foreign keys specified in the mapping.
-
Action: Specify the fields.
- 52: NO_REFERENCE_KEY_IS_SPECIFIED
-
Cause: No query key named queryKey
is found in descriptor
. No reference key from the target table is specified on direct collection mapping.
-
Action: Specify the fields by calling the method setReferenceKeyFieldName(String fieldName)
.
- 53: NO_RELATION_TABLE
-
Cause: The relation table name is not set in this many-to-many mapping.
-
Action: Set the relation table name by calling the method setRelationTableName(String tableName)
.
- 54: NO_SOURCE_RELATION_KEYS_SPECIFIED
-
Cause: There are no source relation keys specified in this many-to-many mapping.
-
Action: Add source relation keys to the mapping.
- 55: NO_SUCH_METHOD_ON_FIND_OBSOLETE_METHOD
-
Cause: TopLink cannot find the descriptor callback method on the domain class. It must take a Session
or a DescriptorEvent
as its argument. TopLink tries to invoke the method using Java reflection. It is a Java exception and TopLink is wrapping only the main exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 56: NO_SUCH_METHOD_ON_INITIALIZING_ATTRIBUTE_METHOD
-
Cause: TopLink cannot find the method methodName(Record databaseRow)
or methodName(Record databaseRow, Session session)
. TopLink wraps the Java reflection exception that is caused when the method is being created from the method name. This method is set by calling setAttributeMethodName(String aMethodName)
.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 57: NO_SUCH_METHOD_WHILE_CONSTRUCTOR_INSTANTIATION
-
Cause: The constructor is inaccessible to TopLink. TopLink wraps the Java reflection exception that is caused when it is creating a new instance of the domain.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 58: NO_SUCH_METHOD_WHILE_CONVERTING_TO_METHOD
-
Cause: TopLink failed to find a method with signature methodName()
or methodName(oracle.toplink.sessions.Session)
. TopLink wraps the Java reflection exception that was raised by its attempt to create a Method
type (java.lang.reflect
) from the method names in the transformation mapping.
-
Action: Ensure that the method methodName
is defined on the domain class that owns the attribute mapped by the transformation mapping.
- 59: NO_SUCH_FIELD_WHILE_INITIALIZING_ATTRIBUTES_ IN_INSTANCE_VARIABLE_ACCESSOR
-
Cause: The instance variable attributeName
is not defined in the domain class, or it is not accessible. TopLink wraps the Java reflection exception that is caused when it is creating a Field
type (java.lang.reflect.Field
) from the attribute name.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 60: NO_SUCH_METHOD_WHILE_INITIALIZING_ ATTRIBUTES_IN_METHOD_ACCESSOR
-
Cause: The method setMethodName
or getMethodName
is not defined for the attribute in the domain class javaClassName
, or it is not accessible. TopLink wraps the Java reflection exception that is caused when it is creating a Method
type from the method name.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 61: NO_SUCH_METHOD_WHILE_INITIALIZING_CLASS_EXTRACTION_METHOD
-
Cause: The static class extraction method methodName(Record
databaseRow)
does not exist, or is not accessible. A Java reflection exception wrapped in a TopLink exception is raised when a class extraction method is being created from the method name in the inheritance policy.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 62: NO_SUCH_METHOD_WHILE_INITIALIZING_COPY_POLICY
-
Cause: The clone method methodName()
does not exist, or is not accessible. A Java reflection exception wrapped in a TopLink exception is raised when a method to create clones is being created from the method name in the copy policy.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 63: NO_SUCH_METHOD_WHILE_INITIALIZING_INSTANTIATION_POLICY
-
Cause: The instance creation method methodName()
does not exist, or is not accessible. A Java reflection exception wrapped in a TopLink exception is raised when a method to create the new instance is being created from the method name in the instantiation policy.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 64: NO_TARGET_FOREIGN_KEYS_SPECIFIED
-
Cause: The foreign keys in the target table are not specified in one-to-many mappings. These fields are not required if a selection criterion is given in the mapping, but otherwise they must be specified.
-
Action: Set target foreign keys or selection criteria.
- 65: NO_TARGET_RELATION_KEYS_SPECIFIED
-
Cause: There are no target relation keys specified in many-to-many mappings.
-
Action: Call method addTargetRelationKeyFieldName(String targetRelationKeyFieldName
, String targetPrimaryKeyFieldName)
to set the fields.
- 66: NOT_DESERIALIZABLE
-
Cause: Attempt to deserialize an object from the byte array that is read from the database. The exception is raised when the serialized object mapping is converting the byte array into an object.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 67: NOT_SERIALIZABLE
-
Cause: Attempt to serialize an object into a byte array. The exception is raised when a serialized object mapping is converting the object into a byte array.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 68: NULL_FOR_NON_NULL_AGGREGATE
-
Cause: The value of the aggregate in the source object object
is null
. Null values are not allowed for aggregate mappings unless allow null is specified in the aggregate mapping.
-
Action: Call the mapping method allowNull
. Provide parameters only if you are making a distinction between foo()
and foo(integer)
.
- 69: NULL_POINTER_WHILE_GETTING_VALUE_THRU_INSTANCE_VARIABLE_ACCESSOR
-
Cause: An object is accessed to get the value of an instance variable through Java reflection. This exception is raised only on some JVMs.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 70: NULL_POINTER_WHILE_GETTING_VALUE_THRU_METHOD_ACCESSOR
-
Cause: The getter method is invoked to get the value of an attribute through Java reflection. This exception is raised only on some JVM.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 71: NULL_POINTER_WHILE_SETTING_VALUE_THRU_INSTANCE_VARIABLE_ACCESSOR
-
Cause: A NullPointerException
has been raised while setting the value of the attributeName
instance variable in the object to value. An object is accessed to set the value of an instance variable through Java reflection. This exception is raised only on some JVMs.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 72: NULL_POINTER_WHILE_SETTING_VALUE_THRU_METHOD_ACCESSOR
-
Cause: A NullPointerException has been raised while setting the value through setMethodName
method in the object with an argument argument
. The set accessor method is invoked to set the value of an attribute through Java reflection. This exception is raised only on some JVMs.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 73: PARENT_DESCRIPTOR_NOT_SPECIFIED
-
Cause: TopLink is unable to find the descriptor for the parent class. The descriptor of a subclass has no parent descriptor.
-
Action: The method setParentClass(Class parentClass)
must be called on the subclass descriptor.
- 74: PRIMARY_KEY_FIELDS_NOT_SPECIFIED
-
Cause: The primary key fields are not set for this descriptor.
-
Action: Add primary key field names using method setPrimaryKeyFieldName(String fieldName)
.
- 75: REFERENCE_CLASS_NOT_SPECIFIED
-
Cause: The reference class is not specified in the foreign reference mapping.
-
Action: Set the reference class by calling the method setReferenceClass(Class aClass)
.
- 77: REFERENCE_DESCRIPTOR_IS_NOT_AGGREGATE
-
Cause: The referenced descriptor for class className
is not set to an aggregate descriptor. An aggregate mapping should always reference a descriptor that is aggregate.
-
Action: Call the method descriptorIsAggregate
on the referenced descriptor.
- 78: REFERENCE_KEY_FIELD_NOT_PROPERLY_SPECIFIED
-
Cause: The table for the reference field is not the reference table. If the reference field name that is specified in the direct collection mapping is qualified with the table name, then the table name should match the reference table name.
-
Action: Qualify the field with the proper name, or change the reference table name.
- 79: REFERENCE_TABLE_NOT_SPECIFIED
-
Cause: The reference table name in the direct collection mapping is not specified.
-
Action: Use the method setReferenceTableName(String tableName)
on the mapping to set the table name.
- 80: RELATION_KEY_FIELD_NOT_PROPERLY_SPECIFIED
-
Cause: The table for the relation key field is not the relation table. If the source and target relation fields names that are specified in the many-to-many mapping are qualified with the table name, then the table name should match the relation table name.
-
Action: Qualify the field with the proper name, or change the relation table name.
- 81: RETURN_TYPE_IN_GET_ATTRIBUTE_ACCESSOR
-
Cause: The method attributeMethodName
that is specified in the transformation mapping does not have a return type set in the attribute, as it should because this method is used to extract value from the database row.
-
Action: Verify the method and make appropriate changes.
- 82: SECURITY_ON_FIND_METHOD
-
Cause: The descriptor callback method with DescriptorEvent
as an argument is not accessible. Java raises a security exception when a Method
type is created from the method name using Java reflection. The method is a descriptor event callback on the domain object that takes DescriptorEvent
as its parameter.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 83: SECURITY_ON_FIND_OBSOLETE_METHOD
-
Cause: The descriptor callback method with Session
as an argument is not accessible. Java raises a security exception when a Method
type is created from the method name using Java reflection. The method is a descriptor event callback on the domain object, which takes class and session as its parameters.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 84: SECURITY_ON_INITIALIZING_ATTRIBUTE_METHOD
-
Cause: Access to the method methodName(Record
databaseRow)
or methodName(Record
databaseRow,
Session session) has been denied. Java raises a security exception when a Method
type is created from the attribute method name using Java reflection. The attribute method that is specified in the transformation mapping is used to extract value from the database row and set by calling setAttributeTransformation(String methodName)
.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 85: SECURITY_WHILE_CONVERTING_TO_METHOD
-
Cause: TopLink failed to find a method with signature methodName()
or methodName(oracle.toplink.sessions.Session)
. Java raises a security exception when a Method
type is created from the method name using Java reflection. These are the methods that extract the field value from the domain object in the transformation mapping.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 86: SECURITY_WHILE_INITIALIZING_ATTRIBUTES_IN_INSTANCE_VARIABLE_ACCESSOR
-
Cause: Access to the instance variable attributeName
in the class javaClassName
is denied. Java raises a security exception when creating a Field
type from the given attribute name using Java reflection.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 87: SECURITY_WHILE_INITIALIZING_ATTRIBUTES_IN_METHOD_ACCESSOR
-
Cause: The methods setMethodName
and getMethodName
in the object javaClassName
are inaccessible. Java raises a security exception when creating a Method
type from the given attribute accessor method name using Java reflection.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 88: SECURITY_WHILE_INITIALIZING_CLASS_ EXTRACTION_METHOD
-
Cause: The static class extraction method methodName(
Record databaseRow
) is not accessible. Java raises a security exception when creating a Method
type from the given class extraction method name using Java reflection. The method is used to extract the class from the database row in the inheritance policy.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 89: SECURITY_WHILE_INITIALIZING_COPY_POLICY
-
Cause: The clone method methodName()
is inaccessible. Using ClassDescriptor
method useCloneCopyPolicy
(java.lang.String methodName
), you can specify that the creation of clones within a unit of work is done by sending the methodName
method to the original object. If the clone method methodName
with no arguments is inaccessible (your application does not have sufficient privileges to call the method), Java raises a security exception when reflectively accessing the method with the given method name using the java.lang.reflect
Java package.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 90: SECURITY_WHILE_INITIALIZING_INSTANTIATION_POLICY
-
Cause: The instance creation method methodName()
is inaccessible. Using any of the ClassDescriptor
methods useFactoryInstantiationPolicy
(java.lang.Class factoryClass
,
java.lang.String methodName
)
, useFactoryInstantiationPolicy
(java.lang.Class factoryClass
, java.lang.String
methodName
, java.lang.String factoryMethodName
), useFactoryInstantiationPolicy
(java.lang.Object factory
, java.lang.String
methodName
), or useMethodInstantiationPolicy
(java.lang.String
staticMethodName
), you can specify how new instances are created. If any of the methods or factory methods are inaccessible (your application does not have sufficient privileges to call the method), Java raises a security exception when reflectively accessing the method with the given method name using the java.lang.reflect
Java package.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 91: SEQUENCE_NUMBER_PROPERTY_NOT_SPECIFIED
-
Cause: Either the sequenceNumberName
or the sequenceNumberFieldName
property is not set. To use sequence-generated IDs, both the sequenceNumberName and sequenceNumberFieldName properties must be set for the descriptor.
-
Action: To use sequence-generated IDs, set both the sequence number name and field name properties.
- 92: SIZE_MISMATCH_OF_FOREIGN_KEYS
-
Cause: The size of the primary keys on the target table does not match the size of the foreign keys on the source in one-to-one mapping.
-
Action: Verify the mapping and the reference descriptor's primary keys.
- 93: TABLE_NOT_PRESENT
-
Cause: The table tableName
is not present in the descriptor.
-
Action: Verify the qualified field names that are specified in the mappings and descriptor so that any fields that are qualified with the table name reference the correct table.
- 94: TABLE_NOT_SPECIFIED
-
Cause: No table is specified in the descriptor. The descriptor must have a table name defined.
-
Action: Call the method addTableName(String tableName)
or setTableName(String tableName)
to set the tables on the descriptor.
- 96: TARGET_FOREIGN_KEYS_SIZE_MISMATCH
-
Cause: The size of the foreign keys on the target table does not match the size of the source keys on the source table in the one-to-many mapping.
-
Action: Verify the mapping.
- 97: TARGET_INVOCATION_WHILE_CLONING
-
Cause: TopLink has encountered a problem in cloning the object domainObject
clone method. The methodName
triggered an exception. Java raises this exception when the cloned object is invoked while the object is being cloned. The clone method is specified on the copy policy that is usually invoked to create clones in unit of work.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 98: TARGET_INVOCATION_WHILE_EVENT_EXECUTION
-
Cause: A descriptor callback method eventMethodName(
DescriptorEvent event)
is not accessible. The exception occurs when the descriptor event method is invoked using Java reflection.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 99: TARGET_INVOCATION_WHILE_GETTING_VALUE_THRU_METHOD_ACCESSOR
-
Cause: The method methodName
on the object objectName
is throwing an exception. Java is throwing an exception while getting an attribute value from the object through a method accessor.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 100: TARGET_INVOCATION_WHILE_INSTANTIATING_METHOD_BASED_PROXY
-
Cause: A method has raised an exception. Java raises this exception while instantiating a method based proxy and instantiating transformation mapping.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 101: TARGET_INVOCATION_WHILE_INVOKING_ATTRIBUTE_METHOD
-
Cause: The underlying method raises an exception. Java is throwing an exception while invoking an attribute transformation method on transformation mapping. The method is invoked to extract value from the database row to set into the domain object.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 102: TARGET_INVOCATION_WHILE_INVOKING_FIELD_TO_METHOD
-
Cause: The method methodName
is throwing an exception. Java is throwing exception while invoking field transformation method on transformation mapping. The method is invoked to extract value from the domain object to set into the database row.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 103: TARGET_INVOCATION_WHILE_INVOKING_ROW_EXTRACTION_METHOD
-
Cause: TopLink encountered a problem extracting the class type from row row
Name
while invoking a class extraction method.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 104: TARGET_INVOCATION_WHILE_METHOD_INSTANTIATION
-
Cause: TopLink is unable to create a new instance. The creation method methodName
caused an exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 105: TARGET_INVOCATION_WHILE_OBSOLETE_EVENT_EXECUTION
-
Cause: The underlying descriptor callback method eventMethodName(Session
session)
raises an exception. Java is throwing an exception while invoking a descriptor event method that takes a session as its parameter.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 106: TARGET_INVOCATION_WHILE_SETTING_VALUE_THRU_METHOD_ACESSOR
-
Cause: The method setMethodName
on the object raises an exception. Java is throwing an exception while invoking a set accessor method on the domain object to set an attribute value into the domain object.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 108: VALUE_NOT_FOUND_IN_CLASS_INDICATOR_MAPPING
-
Cause: The indicator value is not found in the class indicator mapping in the parent descriptor for the class.
-
Action: Verify the addClassIndicator(Class childClass, Object typeValue)
on the inheritance policy.
- 109: WRITE_LOCK_FIELD_IN_CHILD_DESCRIPTOR
-
Cause: The child descriptor has a write-lock field defined. This is unnecessary, because it inherits any required locking from the parent descriptor.
-
Action: Check your child descriptor, and remove the field.
- 110: DESCRIPTOR_IS_MISSING
-
Cause: The descriptor for the reference class className
is missing from the mapping.
-
Action: Verify the session to see if the descriptor for the reference class was added.
- 111: MULTIPLE_TABLE_PRIMARY_KEY_MUST_BE_FULLY_QUALIFIED
-
Cause: Multiple table primary key field names are not fully qualified. These field names are given on the descriptor if it has more than one table.
-
Action: Specify the field names with the table name.
- 112: ONLY_ONE_TABLE_CAN_BE_ADDED_WITH_THIS_METHOD
-
Cause: Attempt to enter more than one table through this method.
-
Action: Use the method addTableName(String tableName)
to add multiple tables to the descriptor.
- 113: NULL_POINTER_WHILE_CONSTRUCTOR_INSTANTIATION
-
Cause: The constructor is inaccessible. Java is throwing this exception while invoking a default constructor to create new instances of the domain object.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 114: NULL_POINTER_WHILE_METHOD_INSTANTIATION
-
Cause: The new instance methodName
creation method is inaccessible. Java is throwing an exception while calling a method to a build new instance of the domain object. This method is given by the user to override the default behavior of creating new instances through a class constructor.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 115: NO_ATTRIBUTE_VALUE_CONVERSION_TO_FIELD_VALUE_PROVIDED
-
Cause: The field conversion value for the attribute value attributeValue
was not given in the object type mapping.
-
Action: Verify the attribute value, and provide a corresponding field value in the mapping.
- 116: NO_FIELD_VALUE_CONVERSION_TO_ATTRIBUTE_VALUE_PROVIDED
-
Cause: The attribute conversion value for the fieldValue
was not given in the object type mapping.
-
Action: Verify the field value, and provide a corresponding attribute value in the mapping.
- 118: LOCK_MAPPING_CANNOT_BE_READONLY
-
Cause: The domain object className
cannot have a read-only mapping for the write-lock fields when the version value is stored in the object.
-
Action: Verify the mappings on the write-lock fields.
- 119: LOCK_MAPPING_MUST_BE_READONLY
-
Cause: The domain object className
does not have a read-only mapping for the write-lock fields when the version value is stored in the cache.
-
Action: Verify the mappings on write-lock fields.
- 120: CHILD_DOES_NOT_DEFINE_ABSTRACT_QUERY_KEY
-
Cause: The query key queryKeyName
is defined in the parent descriptor, but not in the child descriptor. The descriptor has not defined the abstract query key.
-
Action: Define any class that implements the interface descriptor by the abstract query key in the interface descriptor.
- 122: SET_EXISTENCE_CHECKING_NOT_UNDERSTOOD
-
Cause: The interface descriptor parent
does not have at least one abstract query key defined. The string given to the method setExistenceChecking(String token)
is not understood.
-
Action: Contact Oracle Support Services.
- 125: VALUE_HOLDER_INSTANTIATION_MISMATCH
-
Cause: The mapping for the attribute getAttributeName()
uses indirection and must be initialized to a new value holder.
-
Action: Ensure that the mapping uses indirection and that the attribute is initialized to a new value holder.
- 126: NO_SUB_CLASS_MATCH
-
Cause: No subclass matches this class theClass
when inheritance is in aggregate relationship mapping.
-
Action: Verify the subclass and the relationship mapping.
- 127: RETURN_AND_MAPPING_WITH_INDIRECTION_MISMATCH
-
Cause: The return type of the method used to get the attribute getAttributeName
()
of a mapping is not declared as type ValueHolderInterface
, but the mapping is using indirection.
-
Action: Verify that the method used to get the attribute named getAttributeName
()
of DatabaseMapping
returns a value holder, or change the mapping so it does not use indirection.
- 128: RETURN_AND_MAPPING_WITHOUT_INDIRECTION_MISMATCH
-
Cause: The return type of the method used to get the attribute getAttributeName
()
of DatabaseMapping is declared as type ValueHolderInterface
, but the mapping is not using indirection.
-
Action: Ensure that the mapping is using indirection, or change the return type from value holder.
- 129: PARAMETER_AND_MAPPING_WITH_INDIRECTION_MISMATCH
-
Cause: The return type of the method used to set the attribute getAttributeName()
of DatabaseMapping is not declared as type ValueHolderInterface
, but the mapping is using indirection.
-
Action: Ensure that the set method parameter is declared as a valueholder, or change the mapping so it does not use indirection.
- 130: PARAMETER_AND_MAPPING_WITHOUT_INDIRECTION_MISMATCH
-
Cause: The return type of the method used to set the attribute getAttributeName()
of DatabaseMapping is declared as type ValueHolderInterface
, but the mapping is not using indirection.
-
Action: Ensure that the mapping is changed to use indirection, or that the method parameter is not declared as a value holder.
- 131: GET_METHOD_RETURN_TYPE_NOT_VALID
-
Cause: The return type of the method used to get the attribute getAttributeName()
of DatabaseMapping is not declared as type Vector
(or a type that implements the Map
or Collection
interface if using Java 2).
-
Action: Declare the return type of the method used to get the attribute getAttributeName()
of DatabaseMapping as type Vector
(or a type that implements the map or collection interface if using Java 2).
- 133: SET_METHOD_PARAMETER_TYPE_NOT_VALID
-
Cause: The parameter type of the method used to set the attribute getAttributeName()
of DatabaseMapping is not declared as type Vector
(or a type that implements the map or collection interface, if using Java 2).
-
Action: Declare the parameter type of the method used to set the attribute getAttributeName()
of DatabaseMapping as type Vector
(or a type that implements the Map
or Collection
interface, if using Java 2).
- 135: ILLEGAL_TABLE_NAME_IN_MULTIPLE_TABLE_FOREIGN_KEY
-
Cause: The table in the multiple table foreign key relationship refers to an unknown table.
-
Action: Verify the table name.
- 138: ATTRIBUTE_AND_MAPPING_WITH_TRANSPARENT_INDIRECTION_MISMATCH
-
Cause: The attribute getAttributeName()
of DatabaseMapping is not declared as a supertype of validTypeName
, but the mapping is using transparent indirection.
-
Action: Verify the attribute's type and the mapping setup.
- 139: RETURN_AND_MAPPING_WITH_TRANSPARENT_INDIRECTION_MISMATCH
-
Cause: The return type of the method used to get the attribute getAttributeName()
of DatabaseMapping is not declared as a super-type of validTypeName
, but the mapping is using transparent indirection.
-
Action: Verify the attribute's type and the mapping setup.
- 140: PARAMETER_AND_MAPPING_WITH_TRANSPARENT_INDIRECTION_MISMATCH
-
Cause: The parameter type of the method used to set the attribute getAttributeName()
of DatabaseMapping is not declared as a supertype of validTypeName
, but the mapping is using transparent indirection.
-
Action: Verify the attribute's type and the mapping setup.
- 141: FIELD_IS_NOT_PRESENT_IN_DATABASE
-
Cause: The field fieldname
is not present in the table tableName
in the database.
-
Action: Verify the field name for the attribute.
- 142: TABLE_IS_NOT_PRESENT_IN_DATABASE
-
Cause: The table whose name is provided by the Descriptor
method getTableName
is not present in the database.
-
Action: Verify the table name for the descriptor.
- 143: MULTIPLE_TABLE_INSERT_ORDER_MISMATCH
-
Cause: The multiple table insert order vector specified the Descriptor
method getMultipleTableInsertOrder
has fewer or more tables than are specified in the Descriptor
method getTables
. All the tables must be included in the insert order vector.
-
Action: Ensure that all table names for the descriptor are present and that there are no extra tables.
- 144: INVALID_USE_OF_TRANSPARENT_INDIRECTION
-
Cause: Transparent indirection is being used with a mapping other than a CollectionMapping
.
-
Action: Verify the mapping. It must be a collection mapping.
- 145: MISSING_INDIRECT_CONTAINER_CONSTRUCTOR
-
Cause: The indirect container class does not implement the constructor.
-
Action: Implement the constructor for the container.
- 146: COULD_NOT_INSTANTIATE_INDIRECT_CONTAINER_CLASS
-
Cause: TopLink is unable to instantiate the indirect container class using the constructor.
-
Action: Validate the constructor for the indirect container class.
- 147: INVALID_CONTAINER_POLICY
-
Cause: You have used a container policy with an incompatible version of the JDK. This container policy must only be used with JDK 1.3.1 or later.
-
Action: Validate the container policy being used.
- 148: INVALID_CONTAINER_POLICY_WITH_TRANSPARENT_ INDIRECTION
-
Cause: The container policy is incompatible with transparent indirection.
-
Action: Change the container policy to be compatible with transparent indirection, or do not use transparent indirection.
- 149: INVALID_USE_OF_NO_INDIRECTION
-
Cause: NoIndirectionPolicy
object calls this method.
-
Action: Contact Oracle Support Services.
- 150: INDIRECT_CONTAINER_INSTANTIATION_MISMATCH
-
Cause: The mapping for the attribute getAttributeName()
of DatabaseMapping uses transparent indirection and must be initialized to an appropriate container.
-
Action: Initialize the mapping to an appropriate container.
- 151: INVALID_MAPPING_OPERATION
-
Cause: An invalid mapping operation has been used.
-
Action: See the documentation for valid mapping operations.
- 152: INVALID_INDIRECTION_POLICY_OPERATION
-
Cause: An invalid indirection policy operation has been used.
-
Action: See the documentation for valid indirection policy operations.
- 153: REFERENCE_DESCRIPTOR_IS_NOT_AGGREGATECOLLECTION
-
Cause: The reference descriptor for className
is not set to an aggregate collection descriptor.
-
Action: Set the reference descriptor to an aggregate collection descriptor.
- 154: INVALID_INDIRECTION_CONTAINER_CLASS
-
Cause: An invalid indirection container class has been used.
-
Action: Verify the container class.
- 155: MISSING_FOREIGN_KEY_TRANSLATION
-
Cause: The mapping does not include a foreign key field linked to the primary key field.
-
Action: Link the foreign key to the appropriate primary key.
- 156: STRUCTURE_NAME_NOT_SET_IN_MAPPING
-
Cause: The structure name is not set.
-
Action: Set the structure name appropriately.
- 157: NORMAL_DESCRIPTORS_DO_NOT_SUPPORT_ NON_RELATIONAL_EXTENSIONS
-
Cause: Relational descriptors do not support nonrelational extensions.
-
Action: Contact Oracle Support Services.
- 158: PARENT_CLASS_IS_SELF
-
Cause: The descriptor's parent class has been set to itself.
-
Action: Contact Oracle Support Services.
- 159: PROXY_INDIRECTION_NOT_AVAILABLE
-
Cause: An attempt to use proxy indirection has been made, but JDK 1.3.1 or later is not being used.
-
Action: Use JDK 1.3.1 or later.
- 160: INVALID_ATTRIBUTE_TYPE_FOR_PROXY_INDIRECTION
-
Cause: The attribute was not specified in the list of interfaces given to use proxy indirection.
-
Action: Verify the attribute.
- 161: INVALID_GET_RETURN_TYPE_FOR _PROXY_INDIRECTION
-
Cause: The return type for the indirection policy is invalid for the indirection policy.
-
Action: Ensure that the parameter type of the getter method is correct for the indirection policy.
- 162: INVALID_SET_PARAMETER_TYPE_FOR_PROXY_ INDIRECTION
-
Cause: The parameter for the setter method is incorrect for the indirection type.
-
Action: Ensure that the parameter type of the setter method is correct for the indirection policy.
- 163: INCORRECT_COLLECTION_POLICY
-
Cause: The container policy is invalid for the collection type.
-
Action: Ensure that the container policy is correct for the collection type.
- 164: INVALID_AMENDMENT_METHOD
-
Cause: The amendment method that is provided is invalid, not public, or cannot be found.
-
Action: Ensure that the amendment method is public, static, returns void, and has a single argument: Descriptor
.
- 165: ERROR_OCCURRED_IN_AMENDMENT_METHOD
-
Cause: The specified amendment method threw an exception.
-
Action: Examine the returned exception for further information.
- 166: VARIABLE_ONE_TO_ONE_MAPPING_IS_NOT_DEFINED
-
Cause: There is no mapping for the attribute.
-
Action: Validate the mapping and attribute.
- 167: NO_CONSTRUCTOR_INDIRECT_COLLECTION_CLASS
-
Cause: A valid constructor was not found for the indirection container class.
-
Action: Add a default constructor or a constructor with a ValueHolderInterface
in the container class.
- 168: TARGET_INVOCATION_WHILE_CONSTRUCTOR_INSTANTIATION
-
Cause: The constructor is missing.
-
Action: Create the required constructor.
- 169: TARGET_INVOCATION_WHILE_CONSTRUCTOR_INSTANTIATION_OF_FACTORY
-
Cause: The constructor is missing.
-
Action: Create the required constructor.
- 170: ILLEGAL_ACCESS_WHILE_CONSTRUCTOR_INSTANTIATION_OF_FACTORY
-
Cause: Permissions do not allow access to the constructor.
-
Action: Adjust the Java security permissions to permit access to the constructor.
- 171: INSTANTIATION_WHILE_CONSTRUCTOR_INSTANTIATION_OF_FACTORY
-
Cause: An instantiation failed inside the associated constructor.
-
Action: Determine which objects are being instantiated, and verify that all are instantiated properly.
- 172: NO_SUCH_METHOD_WHILE_CONSTRUCTOR_INSTANTIATION_OF_FACTORY
-
Cause: A method call from inside the constructor is invalid because this method does not exist.
-
Action: Ensure that the factory has a default constructor for the called method.
- 173: NULL_POINTER_WHILE_CONSTRUCTOR_INSTANTIATION_OF_FACTORY
-
Cause: A method on a null
object was called from inside a constructor. The factory constructor was inaccessible.
-
Action: Examine the internal exception and take the appropriate action.
- 174: ILLEGAL_ACCESS_WHILE_METHOD_INSTANTIATION_OF_FACTORY
-
Cause: A method was called on an object from inside a factory instantiation, and Java has determined this method to be invalid.
-
Action: Determine why the method is invalid, and replace the method with a valid one.
- 175: TARGET_INVOCATION_WHILE_METHOD_INSTANTIATION_OF_FACTORY
-
Cause: A problem was encountered creating factory using creation method. The creation method triggered an exception.
-
Action: Examine the exception and take the corresponding action.
- 176: NULL_POINTER_WHILE_METHOD_INSTANTIATION_OF_FACTORY
-
Cause: A method called to instantiate a factory threw a NullPointerException
. The creation method is not accessible.
-
Action: Do not use that method to instantiate a factory.
- 177: NO_MAPPING_FOR_ATTRIBUTENAME
-
Cause: Mapping is missing for the attribute attributeName
.
-
Action: The attribute must be mapped.
- 178: NO_MAPPING_FOR_ATTRIBUTENAME_IN_ENTITY_BEAN
-
Cause: Cannot find mapping for an attribute attributeName
in an entity bean beanName
.
-
Action: Map the attribute.
- 179: UNSUPPORTED_TYPE_FOR_BIDIRECTIONAL_RELATIONSHIP_MAINTENANCE
-
Cause: The attribute uses bidirectional relationship maintenance, but has ContainerPolicy
, which does not support it.
-
Action: The attribute must be mapped with a different collection type.
- 180: REFERENCE_DESCRIPTOR_CANNOT_BE_AGGREGATE
-
Cause: No string is defined in the DescriptorExceptionResource.java
file.
-
Action: The reference descriptor for a relationship mapping (except AggregateCollectionMapping
) cannot be aggregate. You must change the reference descriptor to non-aggregate.
- 181: ATTRIBUTE_TRANSFORMER_CLASS_NOT_FOUND
-
Cause: The AttributeTransformer
class cannot be found.
-
Action: Ensure that the AttributeTransformer
class exists and is on the classpath.
- 182: FIELD_TRANSFORMER_CLASS_NOT_FOUND
-
Cause: The FieldTransformer
class cannot be found.
-
Action: Ensure that the FieldTransformer
class exists and is on the classpath.
- 183: ATTRIBUTE_TRANSFORMER_CLASS_INVALID
-
Cause: Invalid use of a class className
as an AttributeTransformer
.
-
Action: Examine the internal exception stack trace and make the appropriate correction.
- 184: FIELD_TRANSFORMER_CLASS_INVALID
-
Cause: Invalid use of a class className
as a FieldTransformer
.
-
Action: Do not use the class as a FieldTransformer
.
- 185: RETURNING_POLICY_FIELD_TYPE_CONFLICT
-
Cause: ReturningPolicy
contains field with two different types.
-
Action: The field was added to ReturningPolicy
twice with different types. The field must be added to ReturningPolicy
once. You must remove excessive addFieldForInsert
and/or addInsertField
calls.
- 186: RETURNING_POLICY_FIELD_INSERT_CONFLICT
-
Cause: ReturningPolicy
contains field that has been added twice using addInsertField
and addInsertFieldReturnOnly
.
-
Action: A field must be added to ReturningPolicy
only once. You must remove excessive addField
calls.
- 187: RETURNING_POLICY_AND_DESCRIPTOR_FIELD_TYPE_CONFLICT
-
Cause: ReturningPolicy
contains field with type Type
, but the same field in descriptor has type differentType
.
-
Action: Specify field type in addField
method only in the event that it cannot be obtained from the descriptor.
- 188: RETURNING_POLICY_UNMAPPED_FIELD_TYPE_NOT_SET
-
Cause: ReturningPolicy
contains unmapped field fieldName
that requires type.
-
Action: You must specify field type in the addField
method.
- 189: RETURNING_POLICY_MAPPED_FIELD_TYPE_NOT_SET
-
Cause: ReturningPolicy
contains mapped field fieldName
that requires type.
-
Action: You must specify field type in the addField
method.
- 190: RETURNING_POLICY_MAPPING_NOT_SUPPORTED
-
Cause: ReturningPolicy
contains a field that is mapped with unsupported mapping.
-
Action: You cannot use ReturningPolicy
with this field. Do not add it to ReturningPolicy
.
- 191: RETURNING_POLICY_FIELD_NOT_SUPPORTED
-
Cause: ReturningPolicy
contains a field fieldName
that is not supported. Field is either sequence field, class type indicator, or used for locking.
-
Action: You cannot use ReturningPolicy
with this field. Do not add it to ReturningPolicy
.
- 192: CUSTOM_QUERY_AND_RETURNING_POLICY_CONFLICT
-
Cause: ReturningPolicy
contains a field fieldName, but custom query queryName
does not output it.
-
Action: Update the custom query so that it outputs a value for this field.
- 193: NO_CUSTOM_QUERY_FOR_RETURNING_POLICY
-
Cause: There is no custom query set, but ReturningPolicy
contains one or more fields to be returned and doesn't support generating call with return.
-
Action: Specify a custom InsertObjectQuery
or UpdateObjectQuery
through DescriptorQueryManager
setInsertQuery
, setInsertCall
, setUpdateQuery
, or setUpdateCall
methods that outputs values for fields added to ReturningPolicy
.
- 194: CLASS_EXTRACTION_METHOD_MUST_BE_STATIC
-
Cause: The class extraction method must be a static method on the descriptor's class.
-
Action: Make the class extraction method a static method on the descriptor's class.
- 195: ISOLATED_DESCRIPTOR_REFERENCED_BY_SHARED_DESCRIPTOR
-
Cause: The shared class must not reference the isolated class.
-
Action: Ensure that the shared class does not reference the isolated class.
- 196: UPDATE_ALL_FIELDS_NOT_SET
-
Cause: updateAllFields
flag has not been set or has been set to false
. When using setForceUpdate(true)
method of CMPPolicy
you must also call setUpdateAllFields(true)
method of CMPPolicy
.
-
Action: Ensure that updateAllFields
is set to true
if forceUpdate
is true
.
- 197: INVALID_MAPPING_TYPE
-
Cause: A mapping of an inappropriate type has been set for this descriptor.
-
Action: The mapping type has to map the descriptor type, e.g. relational mapping for relational descriptor, EIS mapping for EIS descriptor, and XML mapping for XML descriptor.
- 198: NEED_TO_IMPLEMENT_CHANGETRACKER
-
Cause: The object does not implement the ChangeTracker
interface.
-
Action: Ensure that the object implements ChangeTrackerInterface
in order to use ObjectChangeTrackingPolicy
or AttributeChangeTrackingPolicy
.
- 199: NEED_TO_IMPLEMENT_FETCHGROUPTRACKER
-
Cause: The domain class does not implement the FetchGroupTracker
interface.
-
Action: Ensure that the domain class implements the FetchGroupTracker
interface in order to use the fetch group.
- 200: ATTEMPT_TO_REGISTER_DEAD_INDIRECTION
-
Cause: Attempt to register an object with dead indirection as a new object. Possibly, the object was deleted or removed from the cache during a merge of a serialized clone or did not exist in the cache at the time of the merge. This is a concurrency violation.
-
- 201: UNIT_OF_WORK_ISOLATED_OBJECTS_ACCESSED_IN_SESSION
-
Cause: Attempt to built and object in the session cache, but the descriptor is marked as isolated in the unit of work.
-
Action: Ensure that the descriptor is never accessed outside of a unit of work.
For more information, see Part VIII, "Descriptors".
Concurrency Exceptions (2001 – 2009)
ConcurrencyException
is a development exception that is raised when a Java concurrency violation occurs. Only when a running thread is interrupted, causing the JVM to throw an InterruptedException
, is an internal exception information displayed with the error message, as shown in Example 13-2.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
INTERNAL EXCEPTION: Message
Example 13-2 Concurrency Exception
EXCEPTION [TOPLINK – 2004]: oracle.toplink.exceptions.ConcurrencyException
EXCEPTION DESCRIPTION: Signal attempted before wait on concurrency manager.
This usually means that an attempt was made to commit or roll back a transaction before being started, or rolled back twice.
- 2001: WAIT_WAS_INTERRUPTED
-
Cause: In a multi threaded environment, one of the waiting threads was interrupted.
-
Action: Such exceptions are application-dependent.
- 2002: WAIT_FAILURE_SERVER
-
Cause: A request for a connection from the connection pool has been forced to wait, and that wait has been interrupted.
-
Action: Such exceptions are application-dependent.
- 2003: WAIT_FAILURE_CLIENT
-
Cause: A request for a connection from the connection pool has been forced to wait, and that wait has been interrupted.
-
Action: Such exceptions are application-dependent.
- 2004: SIGNAL_ATTEMPTED_BEFORE_WAIT
-
Cause: A signal was attempted before a wait on concurrency manager. This usually means that an attempt was made to commit or roll back a transaction before it was started, or to rollback a transaction twice.
-
Action: Verify transactions in the application.
- 2005: WAIT_FAILURE_SEQ_DATABASE_SESSION
-
Cause: An InterruptedException
was raised while DatabaseSession
sequencing waited for a separate connection to become available.
-
Action: Examine concurrency issues involving object creation with your DatabaseSession
.
- 2006: SEQUENCING_MULTITHREAD_THRU_CONNECTION
-
Cause: Several threads attempted to concurrently obtain sequence objects from the same DatabaseSession
or ClientSession
.
-
Action: Avoid concurrent writing through the same DatabaseSession
or ClientSession
.
- 2007: MAX_TRIES_EXCEDED_FOR_LOCK_ON_CLONE
-
Cause: Maximum number of attempts to lock object was exceed resulting in a failure to clone the object.
-
Action: Ensure that the number of attempts is within the limit.
- 2008: MAX_TRIES_EXCEDED_FOR_LOCK_ON_MERGE
-
Cause: Maximum number of attempts to lock object was exceed resulting in a failure to merge the transaction.
-
Action: Ensure that the number of attempts is within the limit.
- 2009: MAX_TRIES_EXCEDED_FOR_LOCK_ON_BUILD_OBJECT
-
Cause: Maximum number of attempts to lock object was exceed resulting in a failure to build the object: thread threadNumber
has a lock on the object, but thread anotherThreadNumber
is building the object
-
Action: Ensure that the number of attempts is within the limit.
For more information, see "Concurrency".
Conversion Exceptions (3001– 3008)
ConversionException
is a development exception that is raised when a conversion error occurs by an incompatible type conversion. The message that is returned indicates which type cast caused the exception, as shown in Example 13-3.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
INTERNAL EXCEPTION: Message
Example 13-3 Conversion Exception
EXCEPTION [TOPLINK – 3006]: oracle.toplink.exceptions.ConversionException
EXCEPTION DESCRIPTION: object must be of even length to be converted to a ByteArray
- 3001: COULD_NOT_BE_CONVERTED
-
Cause: Attempt to convert an object object
of class ObjectClass
to JavaClass
. The object cannot be converted to a given type.
-
Action: Ensure that the object being converted is of the right type.
- 3002: COULD_NOT_BE_CONVERTED_EXTENDED
-
Cause: Attempt to convert an object object
of class ObjectClass
from mapping mappingType
to JavaClass
. The object cannot be converted to a given type.
-
Action: Ensure that the object being converted is of the right type.
- 3003: INCORRECT_DATE_FORMAT
-
Cause: The date in dateString
is in an incorrect format. The expected format is YYYY-MM-DD.
-
Action: Verify the date format.
- 3004: INCORRECT_TIME_FORMAT
-
Cause: The time in timeString
is in an incorrect format. The expected format is HH:MM:SS.
-
Action: Verify the time format.
- 3005: INCORRECT_TIMESTAMP_FORMAT
-
Cause: The timestamp timestampString
is in an incorrect format. The expected format is YYYY-MM-DD HH:MM:SS.NNNNNNNNN.
-
Action: Verify the timestamp format.
- 3006: COULD_NOT_CONVERT_TO_BYTE_ARRAY
-
Cause: Attempt to convert String
object of uneven length to a ByteArray
. This object cannot be converted to a ByteArray
.
-
Action: Verify the object being converted.
- 3007: COULD_NOT_BE_CONVERTED_TO_CLASS
-
Cause: Attempt to convert an object object
of class ObjectClass
to JavaClass
. The class JavaClass
is not on the classpath.
-
Action: Ensure that the class JavaClass
is on the classpath.
- 3008: INCORRECT_DATE_TIME_FORMAT
-
Cause: Incorrect date-time format object. The expected format is YYYY-MM-DD'T'HH:MM:SS.
-
Action: Ensure that the date-time object is in the expected format of YYYY-MM-DD'T'HH:MM:SS.
For more information, see the following:
Database Exceptions (4002 – 4018)
DatabaseException
is a run-time exception that is raised when data read from the database, or the data that is to be written to the database, is incorrect. The exception may also act as a wrapper for SQLException
. If this is the case, the message contains a reference to the error code and error message, as shown in Example 13-4.
This exception can occur on any database operation. If an execution of a SQL script is involved in a database operation causing DatabaseException, the exception's message, accessible through the getMessage
method, contains the SQL that caused this exception.
This exception includes internal exception and error code information when the exception is wrapping a SQLException
.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
INTERNAL EXCEPTION: Message
ERROR CODE: Error code
Example 13-4 Database Exception
EXCEPTION [TOPLINK – 4002]: oracle.toplink.exceptions.DatabaseException
EXCEPTION DESCRIPTION: java.sql.SQLException: [INTERSOLV][ODBC dBase driver] Incompatible datatypes in expression: >
INTERNAL EXCEPTION: java.sql.SQLException: [INTERSOLV][ODBC dBase driver] Incompatible datatypes in expression: >
ERROR CODE: 3924
- 4002: SQL_EXCEPTION
-
Cause: A SQL exception was encountered, raised by the underlying JDBC bridge. TopLink wraps only that exception.
-
Action: Inspect the internal exception that was raised.
- 4003: CONFIGURATION_ERROR_CLASS_NOT_FOUND
-
Cause: The driver class name was not found.
-
Action: Verify the class name given in JDBCLogin
.
- 4005: DATABASE_ACCESSOR_NOT_CONNECTED
-
Cause: The session is not connected to the database while attempting to read or write on the database.
-
Action: An application may have to log in again because the connection to the database might have been lost.
- 4006: ERROR_READING_BLOB_DATA
-
Cause: An error occurred reading BLOB
data from the database. There are two possibilities for this exception: either the BLOB
data was not read properly from the result set or TopLink cannot process the BLOB
data using ByteArrayOutputStream
.
-
Action: Verify whether the underlying driver supports BLOB
s properly. If it does, then report this problem to Oracle Support Services.
- 4007: COULD_NOT_CONVERT_OBJECT_TYPE
-
Cause: Attempt to convert an object type on internal error.java.sql.TYPES = type
. The object from the result set cannot be converted to the type that was returned from the metadata information.
-
Action: Verify whether the underlying driver supports the conversion type properly. If it does, then report this problem to Oracle Support Services.
- 4008: LOGOUT_WHILE_TRANSACTION_IN_PROGRESS
-
Cause: Attempt to log out while the transaction is still in progress. You cannot log out while a transaction is in progress.
-
Action: Wait until the transaction is finished.
- 4009: SEQUENCE_TABLE_INFORMATION_NOT_COMPLETE
-
Cause: The sequence information given to TopLink is not sufficiently complete to get the set of sequence numbers from the database. This usually happens on native sequencing (see
"Understanding Sequencing in Relational Projects") on an Oracle database.
-
Action: Verify the data provided, especially the sequence name provided in TopLink.
- 4011: ERROR_PREALLOCATING_SEQUENCE_NUMBERS
-
Cause: An error occurred preallocating sequence numbers on the database; the sequence table information is not complete.
-
Action: Ensure the sequence table was properly created on the database.
- 4014: CANNOT_REGISTER_SYNCHRONIZATIONLISTENER_FOR_UNITOFWORK
-
Cause: TopLink cannot register the synchronization listener: underlying_exception_string. When the TopLink session is configured with an ExternalTransactionController
, any unit of work requested by a client must operate within the context of a JTS external global transaction. When a unit of work is created and the external global transaction is not in existence, or if the system cannot acquire a reference to it, this error is reported.
-
Action: Verify that a JTS transaction is in progress before acquiring the unit of work.
- 4015 SYNCHRONIZED_UNITOFWORK_DOES_NOT_ SUPPORT_COMMITANDRESUME
-
Cause: A synchronized
UnitOfWork
does not support the
commitAndResume
operation. When the TopLink session is configured with an
ExternalTransactionController
, any unit of work requested by a client must operate within the context of a JTS external global transaction (see
4014: CANNOT_REGISTER_SYNCHRONIZATIONLISTENER_FOR_UNITOFWORK). The JTS specification does not support the concept of check pointing a transaction—that is, committing the work performed and then continuing to work within the same transaction context. JTS does not support nested transactions, either. As a result, if a client code invokes
commitAndResume
on a synchronized unit of work, this error is reported.
-
Action: None required.
- 4016: CONFIGURATION_ERROR_NEW_INSTANCE_ INSTANTIATION_EXCEPTION
-
Cause: A configuration error occurred when TopLink attempted to instantiate the given driver class. TopLink cannot instantiate the driver.
-
Action: Check the driver.
- 4017: CONFIGURATION_ERROR_NEW_INSTANCE_ILLEGAL_ACCESS_EXCEPTION
-
Cause: A configuration error occurred when TopLink attempted to instantiate the given driver class. TopLink cannot instantiate the driver.
-
Action: Check the driver.
- 4018: TRANSACTION_MANAGER_NOT_SET_FOR_JTS_DRIVER
-
Cause: The transaction manager has not been set for the JTSSynchronizationListener
.
-
Action: Set a transaction manager for the JTSSynchronizationListener
.
Optimistic Lock Exceptions (5001 – 5009)
OptimisticLockException
is a run-time exception that is raised when the row on the database that matches the desired object is missing or when the value on the database does not match the registered number. It is used in conjunction with the optimistic locking feature. This applies only on an update or delete operation, as shown in Example 13-5.
For more information about optimistic locking, see the section on Optimistic locking in a stateless environment in Chapter 2, "Understanding TopLink Application Development". These exceptions should be handled in a try-catch block.
Format
EXCEPTION [TOPLINK – error code]: Exception Name
EXCEPTION DESCRIPTION: Message
Example 13-5 Optimistic Lock Exception
EXCEPTION [TOPLINK – 5003]: oracle.toplink.exceptions.OptimisticLockException
EXCEPTION DESCRIPTION: The object, object.toString() cannot be deleted because it has changed or been deleted since it was last read.
- 5001: NO_VERSION_NUMBER_WHEN_DELETING
-
Cause: Attempt to delete the object object
that does not have a version number in the identity map. This object either was never read or has already been deleted.
-
Action: Use SQL logging to determine the reason for the exception. The last delete operation shows the object being deleted when the exception was raised.
- 5003: OBJECT_CHANGED_SINCE_LAST_READ_WHEN_DELETING
-
Cause: The object state has changed in the database. The object object
cannot be deleted because it has changed or been deleted since it was last read. This usually means that the row in the table was changed by some other application.
-
Action: Refresh the object, which updates it with the new data from the database.
- 5004: NO_VERSION_NUMBER_WHEN_UPDATING
-
Cause: An attempt has been made to update the object object
that does not have a version number in the identity map. It may not have been read before being updated, or it has been deleted.
-
Action: Use SQL logging to determine the reason for the exception. The last update operation shows the object being updated when the exception was raised.
- 5006: OBJECT_CHANGED_SINCE_LAST_READ_WHEN_UPDATING
-
Cause: The object state has changed in the database. The object object
cannot be updated because it has changed or been deleted since it was last read. This usually means that the row in the table was changed by some other application.
-
Action: Refresh the object, which updates it with the new data from the database.
- 5007: MUST_HAVE_MAPPING_WHEN_IN_OBJECT
-
Cause: The object object
does not have a non-read-only mapping corresponding to the version lock field. The mapping, which is needed when the lock value is stored in the domain object rather than in a cache, was not defined for the locking field.
-
Action: Define a mapping for the field.
- 5008: NEED_TO_MAP_JAVA_SQL_TIMESTAMP
-
Cause: A write lock value that is stored in a domain object is not an instance of java.sql.Timestamp
.
-
Action: Change the value of the attribute to be an instance of java.sql.Timestamp
.
- 5009: UNWRAPPING_OBJECT_DELETED_SINCE_LAST_READ
-
Cause: Attempt to unwrapped an object of class className
with primary key key
–the object was deleted since it had been last read.
-
Action: Ensure the existence of the object being upwrapped.
Query Exceptions (6001 – 6129)
QueryException
is a development exception that is raised when insufficient information has been provided to the query. If possible, the message indicates the query that caused the exception. A query is optional and is displayed if TopLink is able to determine the query that caused this exception, as shown in Example 13-6.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
QUERY:
Example 13-6 Query Exception
EXCEPTION [TOPLINK – 6026]: oracle.toplink.exceptions.QueryException
EXCEPTION DESCRIPTION: The query is not defined. When executing a query on the session, the parameter that takes the query is null.
- 6001: ADDITIONAL_SIZE_QUERY_NOT_SPECIFIED
-
Cause: Additional size-retrieving query was not specified: cursored SQL queries must provide an additional query to retrieve the size of the result set. Failure to include the additional query causes this exception.
-
Action: Specify a size query.
- 6002: AGGREGATE_OBJECT_CANNOT_BE_DELETED
-
Cause: An aggregated object was deleted independently of its owner: aggregate objects cannot be written or deleted independent of their owners. No identity is maintained on such objects.
-
Action: Do not try to delete aggregate objects directly.
- 6003: ARGUMENT_SIZE_MISMATCH_IN_QUERY_AND_ QUERY_DEFINITION
-
Cause: The number of arguments provided to the query for execution does not match the number of arguments provided with the query definition.
-
Action: Check the query and the query execution.
- 6004: BACKUP_CLONE_IS_ORIGINAL_FROM_PARENT
-
Cause: The object clone
of class clone.getClass()
with identity hash code (System.identityHashCode()) (System.identityHashCode(clone))
is not from this unit of work space, but from the parent session. The object was never registered in this unit of work, but read from the parent session and related to an object registered in the unit of work.
-
Action: Verify that you are correctly registering your objects. If you are still having problems, use the validateObjectSpace
method of the UnitOfWork to help debug where the error occurred.
- 6005: BACKUP_CLONE_IS_ORIGINAL_FROM_SELF
-
Cause: The object clone of class clone.getClass()
with identity hash code (System.identityHashCode())
(System.identityHashCode(clone))
is the original to a registered new object. Because the unit of work clones new objects that are registered, ensure that an object is registered before it is referenced by another object. If you do not want the new object to be cloned, use the registerNewObject(Object)
method of the UnitOfWork.
-
Action: Verify that you are correctly registering your objects. If you are still having problems, use the validateObjectSpace
method of the UnitOfWork to help debug where the error occurred.
- 6006: BATCH_READING_NOT_SUPPORTED
-
Cause: The mapping that does not support batch reading was used. The optimization of batch reading all the target rows is not supported for the mapping.
-
Action: The problem is a TopLink development problem, and you should never encounter this error code unless the mapping is a new custom mapping. Contact Oracle Support Services.
- 6007: DESCRIPTOR_IS_MISSING
-
Cause: The descriptor for the reference class is missing. The descriptor related to the class or the object is not found in the session.
-
Action: Verify whether or not the related descriptor was added to the session, and whether or not the query is performed on the right object or class.
- 6008: DESCRIPTOR_IS_MISSING_FOR_NAMED_QUERY
-
Cause: The descriptor DomainClassName
for the query named queryName
is missing. The descriptor where named query is defined is not added to the session.
-
Action: Verify whether or not the related descriptor was added to the session, and whether or not the query is performed on the right class.
- 6013: INCORRECT_SIZE_QUERY_FOR_CURSOR_STREAM
-
Cause: The size query given on the queries returning cursor streams is not correct. The execution of the size query did not return any size.
-
Action: If the cursor stream query was a custom query, then check the size of the query that was specified, or report this problem to Oracle Support Services.
- 6014: INVALID_QUERY
-
Cause: Attempt to write an object in a unit of work using modify queries. These objects must be registered.
-
Action: Prior to modification, register objects in the unit of work, so during commit the unit of work can perform the required changes to the database.
- 6015: INVALID_QUERY_KEY_IN_EXPRESSION
-
Cause: The query key key
does not exist. Usually this happens because of a misspelled query key.
-
Action: Check the query key that was specified in the expression and verify that a query key was added to the descriptor.
- 6016: INVALID_QUERY_ON_SERVER_SESSION
-
Cause: Attempt to change an object or a database through the server session: all changes must be performed through a client session's unit of work. The objects cannot be changed on the server session by modifying queries. Objects are changed in the client sessions that are acquired from this server session.
-
Action: Use the client session's unit of work to change the object.
- 6020: NO_CONCRETE_CLASS_INDICATED
-
Cause: No concrete class is indicated for the type in this row. The type indicator read from the database row has no entry in the type indicator hash table or if class extraction method was used, it did not return any concrete class type. The exception is raised when subclasses are being read.
-
Action: Check the class extraction method, if specified, or check the descriptor to verify all the type indicator values were specified.
- 6021: NO_CURSOR_SUPPORT
-
Cause: No cursor support is provided for abstract class multiple table descriptors using expressions.
-
Action: Consider using custom SQL or multiple queries.
- 6023: OBJECT_TO_INSERT_IS_EMPTY
-
Cause: There are no fields to be inserted into the table. The fields to insert into the table table
, are empty.
-
Action: Define at least one mapping for this table.
- 6024: OBJECT_TO_MODIFY_NOT_SPECIFIED
-
Cause: An object to modify has not been specified for a modify query.
-
Action: Verify that the query contains an object before executing.
- 6026: QUERY_NOT_DEFINED
-
Cause: The query is not defined. When executing a query on the session, the parameter that takes the query is null
.
-
Action: Verify that the query is passed properly.
- 6027: QUERY_SENT_TO_INACTIVE_UNIT_OF_WORK
-
Cause: The unit of work has been released and is now inactive.
-
Action: The unit of work, once released, cannot be reused unless the commitAndResume
method is called.
- 6028: READ_BEYOND_QUERY
-
Cause: Attempt to read from the cursor streams beyond its limits (beyond the end of the stream).
-
Action: Ensure that the stream is checked for an end of stream condition before attempting to retrieve more objects.
- 6029: REFERENCE_CLASS_MISSING
-
Cause: The reference class in the query is not specified: a reference class must be provided.
-
Action: Ensure that the query is correct.
- 6030: REFRESH_NOT_POSSIBLE_WITHOUT_CACHE
-
Cause: Attempt to refresh while the caching is not set: the read queries that skip the cache to read objects cannot be used to refresh the objects. Refreshing is not possible without identity.
-
Action: Ensure that the query is correct.
- 6031: SIZE_ONLY_SUPPORTED_ON_EXPRESSION_QUERIES
-
Cause: TopLink did not find a size query. Size is supported only on expression queries unless a size query is given.
-
Action: The cursor streams on a custom query should also define a size query.
- 6032: SQL_STATEMENT_NOT_SET_PROPERLY
-
Cause: The SQL statement has not been properly set. The user should never encounter this error code unless queries have been customized.
-
Action: Contact Oracle Support Services.
- 6034: INVALID_QUERY_ITEM
-
Cause: TopLink is unable to validate a query item expression.
-
Action: Validate the expression being used.
- 6041: SELECTION_OBJECT_CANNOT_BE_NULL
-
Cause: The selection object that was passed to a ReadObjectQuery
(or refresh) was null
.
-
Action: Check setSelectionObject
method on read query.
- 6042: UNNAMED_QUERY_ON_SESSION_BROKER
-
Cause: Data read and data modify queries are being executed without the session name. Only object-level queries can be directly executed by the session broker, unless the query is named.
-
Action: Specify the session name.
- 6043: REPORT_RESULT_WITHOUT_PKS
-
Cause: Attempt to read the object by a ReportQuery
without a primary key: the report query result that was returned is without primary key values. An object from the result can be created only if primary keys were also read.
-
Action: See the documentation about retrievePrimaryKeys
method on report query.
- 6044: NULL_PRIMARY_KEY_IN_BUILDING_OBJECT
-
Cause: The primary key that was read from the row databaseRow
during the execution of the query was detected to be null
: primary keys must not contain null
.
-
Action: Check the query and the table on the database.
- 6045: NO_DESCRIPTOR_FOR_SUBCLASS
-
Cause: The subclass has no descriptor defined for it.
-
Action: Ensure the descriptor was added to the session, or check class extraction method.
- 6046: CANNOT_DELETE_READ_ONLY_OBJECT
-
Cause: Attempt to delete a read-only class.
-
Action: Contact Oracle Support Services.
- 6047: INVALID_OPERATOR
-
Cause: The operator used in the expression is not valid.
-
Action: Check ExpressionOperator
class to see a list of all the operators that are supported.
- 6048: ILLEGAL_USE_OF_GETFIELD
-
Cause: Invalid use of getField
method's data in the expression. This is a TopLink development exception that you should not encounter.
-
Action: Report this problem to Oracle Support Services.
- 6049: ILLEGAL_USE_OF_GETTABLE
-
Cause: Invalid use of getTable
method's data in the expression. This is a TopLink development exception that you should not encounter.
-
Action: Report this problem to Oracle Support Services.
- 6050: REPORT_QUERY_RESULT_SIZE_MISMATCH
-
Cause: The number of attributes requested does not match the attributes returned from the database in report query. This can happen as a result of a custom query on the report query.
-
Action: Check the custom query to ensure it is specified, or report the problem to Oracle Support Services.
- 6051: CANNOT_CACHE_PARTIAL_OBJECT
-
Cause: Attempt to cache a partial object: partial objects are never put in the cache. Partial object queries are not allowed to maintain the cache or to be edited. Use the dontMaintainCache
method.
-
Action: Call the dontMaintainCache
method before executing the query.
- 6052: OUTER_JOIN_ONLY_VALID_FOR_ONE_TO_ONE
-
Cause: Invalid use of an outer join: an outer join (getAllowingNull
method) is valid only for one-to-one mappings and cannot be used for the mapping.
-
Action: Do not attempt to use the getAllowingNull
method for mappings other than one-to-one.
- 6054: CANNOT_ADD_TO_CONTAINER
-
Cause: TopLink is unable to add an object to a container class using policy
. This is TopLink development exception, and you should never encounter this problem unless a custom container policy has been written.
-
Action: Contact Oracle Support Services.
- 6055: METHOD_INVOCATION_FAILED
-
Cause: The invocation of a method on the object anObject
threw a Java reflection exception while accessing the method.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 6056: CANNOT_CREATE_CLONE
-
Cause: Attempt to create a clone of the object anObject
using policy
.
This is a TopLink development exception, and you should never encounter this problem unless a custom container policy has been written.
-
Action: Report this problem to Oracle Support Services.
- 6057: METHOD_NOT_VALID
-
Cause: Invalid call of the method methodName
on object aReceiver
. This is a TopLink development exception, and you should never encounter this problem unless a custom container policy has been written.
-
Action: Contact Oracle Support Services.
- 6058: METHOD_DOES_NOT_EXIST_IN_CONTAINER_CLASS
-
Cause: The method named methodName
was not found in the class aClass
. This exception is raised when looking for a clone method on the container class. The clone is needed to create clones of the container in unit of work.
-
Action: Define a clone method on the container class.
- 6059: COULD_NOT_INSTANTIATE_CONTAINER_CLASS
-
Cause: Attempt to instantiate a class aClass
as the container for the results of a query–this class cannot be instantiated as a container. The exception is a Java exception that is raised when a new interface container policy is being created using Java reflection. TopLink wraps only the Java exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 6060: MAP_KEY_NOT_COMPARABLE
-
Cause: Attempt to use the object anObject
of type ObjectClass
as a key into aContainer
which is of type ContainerClass
. The key cannot be compared with the keys currently in the map. This raises a Java reflection exception while accessing the method. TopLink wraps only the Java exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 6061: CANNOT_ACCESS_METHOD_ON_OBJECT
-
Cause: Attempt to reflectively access the method aMethod
for object: anObject
of type ObjectClass
. This raises a Java reflection exception while accessing the method. TopLink wraps only the Java exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 6062: CALLED_METHOD_THREW_EXCEPTION
-
Cause: The method aMethod
was called reflectively on objectClass
and threw an exception. The method aMethod
raises a Java reflection exception while accessing a method. TopLink wraps only the Java exception.
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 6063: INVALID_OPERATION
-
Cause: Invalid operation operationName
on the cursor. The operation is not supported.
-
Action: Check the class documentation and look for the corresponding method to use.
- 6064: CANNOT_REMOVE_FROM_CONTAINER
-
Cause: Attempt to remove anObject
of type anObjectClass
from aContainerClass
using policy
. This is a TopLink development exception and you should never encounter this problem unless a custom container policy has been written.
-
Action: Contact Oracle Support Services.
- 6065: CANNOT_ADD_ELEMENT
-
Cause: Attempt to add an element to the collection container policy (cannot add object anObject
of type ObjectClass
to a ContainerClass
).
-
Action: Inspect the internal exception, and refer to the Java documentation.
- 6066: BACKUP_CLONE_DELETED
-
Cause: Object references remained after the deletion of the object: the object clone of class clone.getClass
with identity hash code (System.identityHashCode())
(System.identityHashCode(clone)
)
has been deleted, but it still has references.
-
Action: Ensure that you are correctly registering your objects. If you are still having problems, use the validateObjectSpace()
method of the UnitOfWork to help identify where the error occurred.
- 6068: CANNOT_COMPARE_TABLES_IN_EXPRESSION
-
Cause: Attempt to compare table reference to data
in expression.
-
Action: Check the expression.
- 6069: INVALID_TABLE_FOR_FIELD_IN_EXPRESSION
-
Cause: Field has invalid table in this context for field fieldName
in expression.
-
Action: Check the expression.
- 6070: INVALID_USE_OF_TO_MANY_QUERY_KEY_IN_EXPRESSION
-
Cause: Invalid use of a query key representing a one-to-many relationship in expression.
-
Action: Use the anyOf
operator instead of the get
operator.
- 6071: INVALID_USE_OF_ANY_OF_IN_EXPRESSION
-
Cause: Invalid use of anyOf
for a query key not representing a to-many relationship in expression.
-
Action: Use the get
operator instead of the anyOf
operator.
- 6072: CANNOT_QUERY_ACROSS_VARIABLE_ONE_TO_ONE_MAPPING
-
Cause: Attempt to query across a variable one-to-one mapping. This is not supported.
-
Action: Change the expression such that the query is not performed across a variable one-to-one mapping.
- 6073: ILL_FORMED_EXPRESSION
-
Cause: Ill-formed expression in query that is attempting to print an object reference into a SQL statement for queryKey
.
-
Action: Contact Oracle Support Services.
- 6074: CANNOT_CONFORM_EXPRESSION
-
Cause: Expression cannot determine if the object conforms in memory.
-
Action: Set the query to check the database; change the query such that it does not attempt to conform to the results of the query.
- 6075: INVALID_OPERATOR_FOR_OBJECT_EXPRESSION
-
Cause: Invalid operator was used for the object comparison: object comparisons can use only the equal
or notEqual
operators; other comparisons must be performed through query keys or direct attribute level comparisons.
-
Action: Ensure the query uses only equal
and notEqual
if object comparisons are being used.
- 6076: UNSUPPORTED_MAPPING_FOR_OBJECT_COMPARISON
-
Cause: Unsupported type of mapping was used for the object comparison: object comparisons can be used only with one-to-one mappings; other mapping comparisons must be performed through query keys or direct attribute level comparisons.
-
Action: Use a query key instead of attempting to compare objects across the mapping.
- 6077: OBJECT_COMPARISON_CANNOT_BE_PARAMETERIZED
-
Cause: Object comparison was parameterized: object comparisons cannot be used in parameter queries.
-
Action: Change the query so that it does not attempt to use objects when using parameterized queries.
- 6078: INCORRECT_CLASS_FOR_OBJECT_COMPARISON
-
Cause: An incorrect class of the argument was used for the object comparison.
-
Action: Ensure the class for the query is correct.
- 6079: CANNOT_COMPARE_TARGET_FOREIGN_KEYS_ TO_NULL
-
Cause: Object comparison was used for target foreign key relationships: object comparisons cannot be used for target foreign key relationships
-
Action: Query on the source primary key.
- 6080: INVALID_DATABASE_CALL
-
Cause: Invalid database call: the call must be an instance of DatabaseCall
.
-
Action: Ensure the call being used is a DatabaseCall
.
- 6081: INVALID_DATABASE_ACCESSOR
-
Cause: Invalid database accessor: the accessor must be an instance of DatabaseAccessor
.
-
Action: Ensure the accessor being used is a DatabaseAccessor
.
- 6082: METHOD_DOES_NOT_EXIST_ON_EXPRESSION
-
Cause: The nonexisting method methodName
with argument type argTypes
was invoked on an expression.
-
Action: Ensure the method being used is a supported method.
- 6083: IN_CANNOT_BE_PARAMETERIZED
-
Cause: The query that was using IN
was parameterized: queries using IN
cannot be parameterized.
-
Action: Disable the query prepare or binding.
- 6084: REDIRECTION_CLASS_OR_METHOD_NOT_SET
-
Cause: The redirection query was not configured properly: the class or method name was not set.
-
Action: Verify the configuration for the redirection class.
- 6085: REDIRECTION_METHOD_NOT_DEFINED_CORRECTLY
-
Cause: The redirection query's method is not defined or it is defined with the wrong arguments. It must be public static and have the following arguments: DatabaseQuery
, DatabaseRow
, or Session
(the interface).
-
Action: Check the redirection query's method.
- 6086: REDIRECTION_METHOD_ERROR
-
Cause: The static invoke method provided to MethodBaseQueryRedirector
threw an exception when invoked.
-
Action: Check the static invoke method for problems.
- 6087: EXAMPLE_AND_REFERENCE_OBJECT_CLASS_MISMATCH
-
Cause: There is a class mismatch between the example object and the reference class specified for this query.
-
Action: Ensure that the example and reference classes are compatible.
- 6088: NO_ATTRIBUTES_FOR _REPORT_QUERY
-
Cause: A ReportQuery
has been built with no attributes specified.
-
Action: Specify the attribute for the query.
- 6089: NO_EXPRESSION_BUILDER_CLASS_FOUND
-
Cause: The expression has not been initialized correctly. Only a single ExpressionBuilder
should be used for a query. For parallel expressions, the query class must be provided to the ExpressionBuilder
constructor, and the query's ExpressionBuilder
must always be on the left side of the expression.
-
Action: Contact Oracle Support Services.
- 6090: CANNOT_SET_REPORT_QUERY_TO_CHECK_CACHE_ONLY
-
Cause: The checkCacheOnly
method was invoked on a ReportQuery
. You cannot invoke the checkCacheOnly
method on a ReportQuery
, because a ReportQuery
returns data rather than objects and the TopLink cache is built with objects.
-
Action: Do not use a ReportQuery
in this case.
- 6091: TYPE_MISMATCH_BETWEEN_ATTRIBUTE_AND_CONSTANT_ON_EXPRESSION
-
Cause: The type of the constant used for comparison in the expression does not match the type of the attribute.
-
Action: Contact Oracle Support Services.
- 6092: MUST_INSTANTIATE_VALUEHOLDERS
-
Cause: Uninstantiated value holders have been detected.
-
Action: Instantiate the value holders for the collection on which you want to query.
- 6093: MUST_BE_ONE_TO_ONE_OR_ONE_TO_MANY_MAPPING
-
Cause: The buildSelectionCriteria
method was invoked on a mapping that was neither one-to-one nor one-to-many. Only the one-to-one and one-to-many mapping exposes this public API to build selection criteria. Using the buildSelectionCriteria
method with other mapping types will not return correct results.
-
Action: Use the buildSelectionCriteria
method only with one-to-one and one-to-many mappings.
- 6094: PARAMETER_NAME_MISMATCH
-
Cause: An unmapped field was used in a parameterized expression.
-
Action: Map the field or define an alternate expression that does not rely on the unmapped field.
- 6095: CLONE_METHOD_REQUIRED
-
Cause: A delegate class of an IndirectContainer
implementation does not implement Cloneable
. If you implement IndirectContainer
you must also implement Cloneable
. For example, see oracle.toplink.indirection.IndirectSet
. The clone
method must clone the delegate. For example, the IndirectSet
implementation uses reflection to invoke the clone
method because it is not included in the common interface shared by IndirectSet
and its base delegate class, HashSet
.
-
Action: Ensure that your IndirectContainer
implementation or its delegate class implements Cloneable
.
- 6096: CLONE_METHOD_INACCESSIBLE
-
Cause: A delegate class of an IndirectContainer
implementation implements Cloneable
but the IndirectContainer
implementation does not have access to the specified clone method. That is, a java.lang.IllegalAccessException
is raised when the delegate's clone method is invoked.
-
Action: Ensure that both the delegate clone method and the delegate class are public. Ensure permission is set for Java reflection in your VM security settings. See also the invoke
method of java.lang.reflect.Method.
- 6097: CLONE_METHOD_THORW_EXCEPTION
-
Cause: A delegate class of an IndirectContainer
implementation implements Cloneable
and the IndirectContainer
implementation has access to the specified clone
method, but the specified clone
method raises a java.lang.reflect.InvocationTargetException
when invoked.
-
Action: Verify the implementation of the delegate's clone method.
- 6098: UNEXPECTED_INVOCATION
-
Cause: A proxy object method raises an unexpected exception when invoked (that is, some exception other than InvocationTargetException
and ValidationException
.)
-
Action: Review the proxy object to see where it is throwing the exception described in the exception message. Ensure this exception is no longer raised.
- 6099: JOINING_ACROSS_INHERITANCE_WITH_MULTIPLE_TABLES
-
Cause: Joining with query across inheritance class with multiple table subclasses. This is not supported: joining cannot be used on relationships with inheritance classes that have subclasses that span multiple tables as this requires multiple separate queries. The multiple queries cannot be joined into a single query.
-
Action: Use batch reading on the relationship instead, as this will provide equivalent or better performance.
- 6100: MULTIPLE_ROWS_DETECTED_FROM_SINGLE_OBJECT_READ
-
Cause: Multiple values detected for single-object read query. This is a CMP compliance option that ensures the finder methods for a single object only return a single row.
-
Action: Set the system property toplink.cts.checkMultipleRows
to false
, or ensure that the finder query only returns a single row from the database.
- 6101: HISTORICAL_QUERIES_MUST_PRESERVE_GLOBAL_CACHE
-
Cause: Executing this query could violate the integrity of the global session cache which must contain only the latest versions of objects.
-
Action: To execute a query that returns objects of a historical nature, you must do one of the following:
-
Use a HistoricalSession
(acquireSessionAsOf
). All objects read will be cached and automatically read at that time. This applies also to triggering object relationships.
-
Set shouldMaintainCache
to false
. You may make any object expression as of a previous time, provided none of its fields are represented in the result set (i.e. used in the where
clause).
- 6102: HISTORICAL_QUERIES_ONLY_SUPPORTED_ON_ORACLE
-
Cause: Invalid database was used: historical queries only work with Oracle 9.2.0.4 or later databases, as it uses the Oracle database Flashback feature.
-
Action: Ensure that historical queries are only used with an Oracle 9.2.0.4 or later database.
- 6103: INVALID_QUERY_ON_HISTORICAL_SESSION
-
Cause: Invalid query was executed on a historical session: you may not execute a WriteQuery
from inside a read-only HistoricalSession
. To restore historical objects, try the following: read the same object as it is now with a UnitOfWork
and commit the UnitOfWork
.
-
Action: To restore historical objects, read the same object as it is now with a UnitOfWork
and commit the UnitOfWork
.
- 6104: OBJECT_DOES_NOT_EXIST_IN_CACHE
-
Cause: The object does not exist in the cache.
-
Action: Ensure that the object exists in the cache.
- 6105: MUST_USE_CURSOR_STREAM_POLICY
-
Cause: The cursor stream policy was not used on the query instantiation.
-
Action: Reinitialize the query with a cursor stream policy.
- 6106: CLASS_PK_DOES_NOT_EXIST_IN_CACHE
-
Cause: The object with primary key does not exist in the cache.
-
Action: Ensure that the object exists in the cache.
- 6107: UPDATE_STATEMENTS_NOT_SPECIFIED
-
Cause: Missing update statements on UpdateAllQuery
.
-
Action: Add update statements using the addUpdate
method.
- 6108: INHERITANCE_WITH_MULTIPLE_TABLES_NOT_SUPPORTED
-
Cause: For UpdateAllQuery, inheritance was used with multiple tables: UpdateAllQuery
does not support inheritance with multiple tables.
-
Action: Do not use UpdateAllQuery
in this situation.
- 6109: QUERY_FETCHGROUP_NOT_DEFINED_IN_DESCRIPTOR
-
Cause: The named fetch group is not defined at the descriptor level.
-
Action: Ensure the fetch group is defined in the descriptor.
- 6110: CANNOT_CONFORM_UNFETCHED_ATTRIBUTE
-
Cause: Read query cannot conform to the unfetched attribute of the partially fetched object in the unit of work identity map.
-
Action: Do not use unfetched attribute conforming, or explicitly fetch the attribute before conforming.
- 6111: FETCH_GROUP_ATTRIBUTE_NOT_MAPPED
-
Cause: The fetch group attribute is not defined or mapped.
-
Action: Ensure that any attribute defined in a fetch group is defined in the class and mapped.
- 6112: FETCH_GROUP_NOT_SUPPORT_ON_REPORT_QUERY
-
Cause: A fetch group was set on report query: fetch groups cannot be set on report queries.
-
Action: Remove the fetch group setting on ReportQuery
, or use ReadObjectQuery
or ReadObjectQuery
instead.
- 6113: FETCH_GROUP_NOT_SUPPORT_ON_PARTIAL_ATTRIBUTE_READING
-
Cause: Fetch group was used together with partial attribute reading: fetch groups cannot be used together with partial attribute reading.
-
Action: Remove the partial attribute reading setting in the query.
- 6114: FETCHGROUP_VALID_ONLY_IF_FETCHGROUP_MANAGER_IN_DESCRIPTOR
-
Cause: A fetch group manager is not defined at the descriptor while attempting to set a fetch group on a query.
-
Action: You must define a fetch group manager at the descriptor in order to set a fetch group on the query.
- 6115: ISOLATED_QUERY_EXECUTED_ON_SERVER_SESSION
-
Cause: An isolated query was executed on a server session: queries on isolated classes, or queries set to use exclusive connections, must not be executed on a ServerSession
or in CMP outside of a transaction.
-
Action: Do not execute queries on isolated classes or queries set to use exclusive connections on a ServerSession
or in CMP outside of a transaction.
- 6116: NO_CALL_OR_INTERACTION_SPECIFIED
-
Cause: No call or interaction method was specified for the attempted operation.
-
Action: Specify a call or interaction method.
- 6117: CANNOT_CACHE_CURSOR_RESULTS_ON_QUERY
-
Cause: A query that uses a cursored result to cache query results was set.
-
Action: Do not cache query results or do not use a cursor policy.
- 6118: CANNOT_CACHE_ISOLATED_DATA_ON_QUERY
-
Cause: Query on an isolated class attempted to cache query results on the query.
-
Action: Do not cache query results for a query on an isolated class.
- 6119: MAPPING_FOR_EXPRESSION_DOES_NOT_SUPPORT_JOINING
-
Cause: The join expression is not valid, or is for a mapping type that does not support joining.
-
Action: Joining is supported only for one-one and one-many mappings.
- 6120: SPECIFIED_PARTIAL_ATTRIBUTE_DOES_NOT_EXIST
-
Cause: The partial attribute attributeName
is not a valid attribute of the class className
.
-
Action: Ensure that this attribute exists, and is mapped.
- 6121: INVALID_BUILDER_IN_QUERY
-
Cause: The query has not been defined correctly: the expression builder is missing.
-
Action: Ensure the queries builder is always on the left for sub queries and parallel queries.
- 6122: INVALID_EXPRESSION
-
Cause: Attempt to use an invalid expression expression
.
-
Action: Ensure the correctness of the expression.
- 6123: INVALID_CONTAINER_CLASS
-
Cause: Invalid container class specified: the container class className
cannot be used, because the container needs to implement interfaceName
.
-
Action: Ensure that the class specified as a container implements the correct interface.
- 6124: INCORRECT_QUERY_FOUND
-
Cause: TopLink was expecting to find the query queryName, but instead found an incorrect query queryName
.
-
Action: Provide the correct query.
- 6125: CLEAR_QUERY_RESULTS_NOT_SUPPORTED
-
Cause: The ReadQuery
method clearQueryResults()
was called: this method cannot be called anymore. The call to the clearQueryResults
method now requires that the session be provided.
-
Action: Call the ReadQuery
method clearQueryResults(session)
.
- 6126: CANNOT_CONFORM_AND_CACHE_QUERY_RESULTS
-
Cause: A query is being executed that uses both conforming and cached query results. These two settings are incompatible.
-
Action: Ensure that the query uses either conforming or cached query results.
- 6127: REFLECTIVE_CALL_ON_TOPLINK_CLASS_FAILED
-
Cause: A reflective call failed on the TopLink class classNAME
.
-
Action: Set up your environment to allow Java reflection
- 6128: BATCH_READING_NOT_SUPPORTED_WITH_CALL
-
Cause: Attempt to use batch reading on a query using a custom call: batch reading is not supported on queries using custom calls.
-
Action: Do not use batch reading on queries using custom calls.
- 6129: REFRESH_NOT_POSSIBLE_WITH_CHECK_CACHE_ONLY
-
Cause: Attempt to refreshing the query that does not go to the database. This is not possible.
-
Action: Avoid refreshing queries that do not go to the database.
For more information, see Part XVIII, "Queries".
Validation Exceptions (7001 – 7200)
ValidationException
is a development exception that is raised when an incorrect state is detected or an API is used incorrectly.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-7 Validation Exception
EXCEPTION [TOPLINK – 7008]: oracle.toplink.exceptions.ValidationException
EXCEPTION DESCRIPTION: The Java type javaClass is not a valid database type. The Java type of the field to be written to the database has no corresponding type on the database.
- 7001: LOGIN_BEFORE_ALLOCATING_CLIENT_SESSIONS
-
Cause: Attempt to allocate client sessions before logging in to the server.
-
Action: Ensure you have called login
method on your server session or database session. This error also appears in multi-threaded environments as a result of concurrency issues. Check that all your threads are synchronized.
- 7002: POOL_NAME_DOES_NOT_EXIST
-
Cause: The pool name used while acquiring client session from the server session does not exist.
-
Action: Verify the pool name given while acquiring client session and all the existing pools on the server session.
- 7003: MAX_SIZE_LESS_THAN_MIN_SIZE
-
Cause: The maximum number of connections in a connection pool is less than the minimum number of connections. The connection pool size must be greater than the minimum number of connections.
-
Action: Check addConnectionPool(String poolName,
JDBCLogin
login, int minNumberOfConnections
, int maxNumberOfConnections)
method on the server session.
- 7004: POOLS_MUST_BE_CONFIGURED_BEFORE_LOGIN
-
Cause: Attempt to add connection pools after logging in to the server session: pools must all be added before login on the server session has been done. Once logged in, you cannot add pools.
-
Action: Check addConnectionPool(String poolName,
JDBCLogin login, int minNumberOfConnections, int maxNumberOfConnections)
on server session. This method should be called before logging in on the server session.
- 7008: JAVA_TYPE_IS_NOT_A_VALID_DATABASE_TYPE
-
Cause: The Java type javaClass
is not a valid database type. The Java type of the field to be written to the database has no corresponding type on the database.
-
Action: Check the table or stored procedure definition.
- 7009: MISSING_DESCRIPTOR
-
Cause: The descriptor className
is not found in the session.
-
Action: Ensure that the related descriptor to the class was properly registered with the session.
- 7010: START_INDEX_OUT_OF_RANGE
-
Cause: This is a TopLink development exception and you should never encounter this problem. It happens when a copy of a vector is created with a start and end index.
-
Action: Report this problem to Oracle Support Services.
- 7011: STOP_INDEX_OUT_OF_RANGE
-
Cause: This is a TopLink development exception and you should never encounter this problem. It happens when a copy of a vector is created with a start and end index.
-
Action: Report this problem to Oracle Support Services.
- 7012: FATAL_ERROR_OCCURRED
-
Cause: This is a TopLink development exception and you should never encounter this problem. It happens when test cases are executed.
-
Action: Report this problem to Oracle Support Services. This error commonly occurs if you attempt to call the
commit
method on an invalid (or previously committed) unit of work.
If cannotCommitUOWAgain
method of ValidationException
appears in the stack trace, verify that the commit
method was called on valid UnitOfWork
instances.
- 7013: NO_PROPERTIES_FILE_FOUND
-
Cause: The toplink.properties
file cannot be found on the system classpath.
-
Action: Ensure that there is a toplink.properties
file located on the system classpath.
- 7017: CHILD_DESCRIPTORS_DO_NOT_HAVE_IDENTITY_MAP
-
Cause: An identity map is added to the child descriptor. A child descriptor shares its parent's identity map.
-
Action: Check the child descriptor and remove the identity map from it.
- 7018: FILE_ERROR
-
Cause: You should never encounter this problem. It happens when test cases are executed.
-
Action: Contact Oracle Support Services.
- 7023: INCORRECT_LOGIN_INSTANCE_PROVIDED
-
Cause: The login instance provided to the login
method is incorrect. A JDBCLogin
must be provided.
-
Action: Use a JDBCLogin.
- 7024: INVALID_MERGE_POLICY
-
Cause: This is a TopLink development exception and you should never encounter it.
-
Action: Contact Oracle Support Services.
- 7025: ONLY_FIELDS_ARE_VALID_KEYS_FOR_ DATABASE_ROWS
-
Cause: The key on the database row is not either of type String
or of type DatabaseField
.
-
Action: Contact Oracle Support Services.
- 7027: SEQUENCE_SETUP_INCORRECTLY
-
Cause: The sequence sequenceName
is set up incorrectly: increment does not match preallocation size.
-
Action: Contact Oracle Support Services.
- 7028: WRITE_OBJECT_NOT_ALLOWED_IN_UNIT_OF_WORK
-
Cause: Attempt to use writeObject()
method in a UnitOfWork
.
-
Action: Ensure that a writeObject()
method is not in the UnitOfWork
.
- 7030: CANNOT_SET_READ_POOL_SIZE_AFTER_LOGIN
-
Cause: Attempt to set read pool size after the server session has already been logged in.
-
Action: Set the pool size before login.
- 7031: CANNOT_ADD_DESCRIPTORS_TO_SESSION_BROKER
-
Cause: Attempt to add a descriptor directly to a session broker.
-
Action: Descriptors are added to the sessions contained in the session broker.
- 7032: NO_SESSION_REGISTERED_FOR_CLASS
-
Cause: The descriptor related to the domain class domainClass
was not found in any of the sessions registered in the session broker.
-
Action: Check the sessions.
- 7033: NO_SESSION_REGISTERED_FOR_NAME
-
Cause: A session sessionName
is not registered in the session broker.
-
Action: Check the session broker.
- 7038: LOG_IO_ERROR
-
Cause: Error while logging message to session's log.
-
Action: Check the internal exception.
- 7039: CANNOT_REMOVE_FROM_READ_ONLY_CLASSES_ IN_NESTED_UNIT_OF_WORK
-
Cause: Attempt to remove from the set of read-only classes in a nested unit of work. A nested unit of work's set of read-only classes must be equal to or be a superset of its parent's set of read-only classes.
-
Action: Contact Oracle Support Services.
- 7040: CANNOT_MODIFY_READ_ONLY_CLASSES_SET_ AFTER_USING_UNIT_OF_WORK
-
Cause: Attempt to change the set of read-only classes in a unit of work after that unit of work has been used. Changes to the read-only set must be made when acquiring the unit of work or immediately after.
-
Action: Contact Oracle Support Services.
- 7042: PLATFORM_CLASS_NOT_FOUND
-
Cause: The platform class className
was not found and a reflection exception is raised.
-
Action: Check the internal exception.
- 7043: NO_TABLES_TO_CREATE
-
Cause: A project project
does not have any tables to create on the database.
-
Action: Validate the project and tables you are attempting to create.
- 7044: ILLEGAL_CONTAINER_CLASS
-
Cause: Illegal attempt to use the class className
as the container–this class does not implement the Collection
or Map
interfaces.
-
Action: Implement either the Collection
or Map
interfaces in the container class.
- 7047: CONTAINER_POLICY_DOES_NOT_USE_KEYS
-
Cause: Invalid Map
class was specified for the container policy. The container specified (of Class
aPolicyContainerClass
) does not require keys. You tried to use the method methodName
.
-
Action: Use map class that implements the Map
interface.
- 7048: METHOD_NOT_DECLARED_IN_ITEM_CLASS
-
Cause: The key method on the map container policy is not defined. The instance method methodName does not exist in the reference class className and therefore cannot be used to create a key in a map. A map container policy represents the way to handle an indexed collection of objects. Usually the key is the primary key of the objects stored, so the policy needs to know the name of the primary key getter method in order to extract it from each object using reflection. For instance, a user might call policy.setKeyMethodName("getId")
.
-
Action: Check the second parameter of the useMapClass
method of DatabaseQuery
.
- 7051: MISSING_MAPPING
-
Cause: Missing attribute attributeName
for descriptor descriptor
called from methodName
. This is a TopLink development exception, and you should never encounter it.
-
Action: Contact Oracle Support Services.
- 7052: ILLEGAL_USE_OF_MAP_IN_DIRECTCOLLECTION
-
Cause: The method useMapClass
was called on a DirectCollectionMapping
. It is invalid to call the useMapClass
method on a DirectCollectionMapping
. TopLink cannot instantiate Java attributes mapped using a DirectCollectionMapping
with a map. The useMapClass
method is supported for OneToManyMapping
and ManyToManyMapping
. The Java 2 Collection
interface is supported using the useCollectionClass
method.
-
Action: Use the useCollectionClass
method. Do not call the useMapClass
method on DirectCollectionMapping
.
- 7053: CANNOT_RELEASE_NON_CLIENTSESSION
-
Cause: TopLink is unable to release a session that is not a client session. Only client sessions can be released.
-
Action: Modify the code to ensure the client session is not released.
- 7054: CANNOT_ACQUIRE_CLIENTSESSION_FROM_SESSION
-
Cause: TopLink is unable to acquire a session that is not a client session. Client sessions can be acquired only from server sessions.
-
Action: Modify the code to ensure an acquire session is attempted only from server sessions.
- 7055: OPTIMISTIC_LOCKING_NOT_SUPPORTED
-
Cause: Attempt to use optimistic locking with stored procedure generation. This is not supported.
-
Action: Do not use optimistic locking with stored procedure generation.
- 7056: WRONG_OBJECT_REGISTERED
-
Cause: The wrong object was registered into the unit of work. It should be the object from the parent cache.
-
Action: Ensure that the object is from the parent cache.
- 7058: INVALID_CONNECTOR
-
Cause: The connector selected is invalid and must be of type DefaultConnector
.
-
Action: Ensure that the connector is of type DefaultConnector
.
- 7059: INVALID_DATA_SOURCE_NAME
-
Cause: Invalid data source name dsName
.
-
Action: Verify the data source name.
- 7060: CANNOT_ACQUIRE_DATA_SOURCE
-
Cause: TopLink is unable to acquire the data source with the name dsName
, or an error has occurred in setting up the data source.
-
Action: Verify the data source name. Check the nested SQL exception to determine the cause of the error. Typical problems include:
-
The connection pool was not configured in your config.xml
file.
-
The driver is not on the classpath.
-
The user or password is incorrect.
-
The database server URL or driver name is not properly specified.
- 7061: JTS_EXCEPTION_RAISED
-
Cause: An exception occurred within the Java Transaction Service (JTS).
-
Action: Examine the JTS exception and see the JTS documentation.
- 7062: FIELD_LEVEL_LOCKING_NOTSUPPORTED_ OUTSIDE_A_UNIT_OF_WORK
-
Cause: Attempt to use FieldLevelLocking
outside a unit of work. This is not supported. In order to use field-level locking, a unit of work must be used for all write operations.
-
Action: Use a unit of work for writing.
- 7063: EJB_CONTAINER_EXCEPTION_RAISED
-
Cause: An exception occurred within the EJB container.
-
Action: Examine the EJB exception and see the JTS documentation.
- 7064: EJB_PRIMARY_KEY_REFLECTION_EXCEPTION
-
Cause: An exception occurred in the reflective enterprise bean primary key extraction.
-
Action: Ensure that your primary key object is defined correctly.
- 7065: EJB_CANNOT_LOAD_REMOTE_CLASS
-
Cause: The remote class for the bean cannot be loaded or found.
-
Action: Ensure that the correct class loader is set properly.
- 7066: EJB_MUST_BE_IN_TRANSACTION
-
Cause: Attempt to create or remove an enterprise bean outside of a transaction: TopLink is unable to create or remove enterprise beans unless a JTS transaction is present, bean=bean
.
-
Action: Ensure that the JTS transaction is present.
- 7068: EJB_INVALID_PROJECT_CLASS
-
Cause: The platform class platformName
was not found for the project projectName
using the default class loader.
-
Action: Validate the project and platform.
- 7069: PROJECT_AMENDMENT_EXCEPTION_OCCURED
-
Cause: An exception occurred while looking up or invoking the project amendment method amendmentMethod
on the class amendmentClass
.
-
Action: Validate the amendment method and class.
- 7070: EJB_TOPLINK_PROPERTIES_NOT_FOUND
-
Cause: Attempt to load toplink.properties
resource bundle outside the classpath: the resource bundle must be located on the classpath in a TopLink directory.
-
Action: Validate the classpath and the location of the TopLink resource bundle.
- 7071: CANT_HAVE_UNBOUND_IN_OUTPUT_ARGUMENTS
-
Cause: Attempt to use input or output parameters without using binding.
-
Action: Use binding on the StoredProcedureCall
.
- 7072: EJB_INVALID_PLATFORM_CLASS
-
Cause: SessionManager
failed to load the class identified by the value associated with properties platform-class
or external-transaction-controller-class
during initialization when it loads the TopLink session common properties from the TopLink global properties file (sessions.xml
for non-EJB applications, or toplink-ejb-jar.xml
for EJB applications).
-
Action: Ensure that your TopLink global properties file is correctly configured. Pay particular attention to the platform-class
and external-transaction-controller-class
properties.
- 7073: ORACLE_OBJECT_TYPE_NOT_DEFINED
-
Cause: The Oracle object type with type name typeName
is not defined.
-
Action: Ensure that the Oracle object type is defined.
- 7074: ORACLE_OBJECT_TYPE_NAME_NOT_DEFINED
-
Cause: The Oracle object type typeName
is not defined.
-
Action: Ensure that the Oracle object type is defined.
- 7075: ORACLE_VARRAY_MAXIMIM_SIZE_NOT_DEFINED
-
Cause: The Oracle VARRAY
type typeName
maximum size is not defined.
-
Action: Verify the maximum size for the Oracle VARRAY
.
- 7076: DESCRIPTOR_MUST_NOT_BE_INITIALIZED
-
Cause: Attempt to generate a project class while descriptors have already been initialized: when generating the project class, the descriptors must not be initialized.
-
Action: Ensure that the descriptors are not initialized before generating the project class.
- 7077: EJB_INVALID_FINDER_ON_HOME
-
Cause: The home interface toString
method specified during creation of BMPWrapperPolicy
does not contain a correct findByPrimaryKey
method. A findByPrimaryKey
method must exist that takes the PrimaryKey
class for this bean.
-
Action: Ensure that a findByPrimaryKey
method exists and is correct.
- 7078: EJB_NO_SUCH_SESSION_SPECIFIED_IN_PROPERTIES
-
Cause: The sessionName
specified on the deployment descriptor does not match any session specified in the toplink.properties
file.
-
Action: Contact Oracle Support Services.
- 7079: EJB_DESCRIPTOR_NOT_FOUND_IN_SESSION
-
Cause: The descriptor was not found in the session.
-
Action: Check the project being used for this session.
- 7080: EJB_FINDER_EXCEPTION
-
Cause: A FinderException
is raised when attempting to load an object from the class with the primary key.
-
Action: Contact Oracle Support Services.
- 7081: CANNOT_REGISTER_AGGREGATE_OBJECT_IN_ UNIT_OF_ WORK
-
Cause: Attempt to register an aggregate object directly in the unit of work. This is not supported. The aggregate object must be associated with the source (owner) object.
-
Action: Contact Oracle Support Services.
- 7082: MULTIPLE_PROJECTS_SPECIFIED_IN_PROPERTIES
-
Cause: The toplink.properties
file specified multiple project files for the server. Only one project file can be specified.
-
Action: Specify either projectClass
, projectFile
, or xmlProjectFile
.
- 7083: NO_PROJECT_SPECIFIED_IN_PROPERTIES
-
Cause: The toplink.properties
file does not include any information on the TopLink project to use for the server. One project file must be specified.
-
Action: Specify either projectClass
, projectFile
, or xmlProjectFile
.
- 7084: INVALID_FILE_TYPE
-
Cause: The specified file is not a valid type for reading. ProjectReader
must be given the deployed XML project file.
-
Action: Contact Oracle Support Services.
- 7085: SUB_SESSION_NOT_DEFINED_FOR_BROKER
-
Cause: TopLink is unable to create an instance of the external transaction controller specified in the properties file.
-
Action: Contact Oracle Support Services.
- 7086: EJB_INVALID_SESSION_TYPE_CLASS
-
Cause: The session manager cannot load the class corresponding to the session's type class name.
-
Action: Ensure that the class name of the session's type is fully qualified in the sessions.xml
file or toplink.properties
file.
- 7087: EJB_SESSION_TYPE_CLASS_NOT_FOUND
-
Cause: The session manager cannot load the class corresponding to the session's type class name.
-
Action: Ensure that the class name of the session's type is fully qualified in the sessions.xml
file or toplink.properties
file.
- 7088: CANNOT_CREATE_EXTERNAL_TRANSACTION_ CONTROLLER
-
Cause: The session manager cannot load the class corresponding to the external transaction controller's class name.
-
Action: Ensure that the class name of the external transaction controller is valid and fully qualified in the sessions.xml
file or toplink.properties
file.
- 7089: SESSION_AMENDMENT_EXCEPTION_OCCURED
-
Cause: The session manager cannot load the class corresponding to the amendment class name, or it cannot load the method on the amendment class corresponding to the amendment method name.
-
Action: Ensure that the class name of the amendment class is fully qualified, and the amendment method exists in the amendment class in the sessions.xml
file or toplink.properties
file.
- 7091: SET_LISTENER_CLASSES_EXCEPTION
-
Cause: TopLink is unable to create the listener class that implements SessionEventListener
for the internal use of SessionXMLProject
.
-
Action: Contact Oracle Support Services.
- 7092: EXISTING_QUERY_TYPE_CONFLICT
-
Cause: TopLink has detected a conflict between a custom query with the same name and arguments to a session.
-
Action: Ensure that no query is added to the session more than once or change the query name so that the query can be distinguished from others.
- 7093: QUERY_ARGUMENT_TYPE_NOT_FOUND
-
Cause: TopLink is unable to create an instance of the query argument type.
-
Action: Ensure that the argument type is a fully qualified class name and the argument class is included in the classpath environment.
- 7094: ERROR_IN_SESSION_XML
-
Cause: The sessions.xml
or toplink.properties
file cannot be loaded.
-
Action: Ensure that the path to either of the files exists on the classpath environment.
- 7095: NO_SESSIONS_XML_FOUND
-
Cause: The sessions.xml
or toplink.properties
file cannot be loaded.
-
Action: Ensure that the path to either of the files exists on the classpath environment. The sessions.xml
should be included in the root of the deployed JAR file. When using a WAR file, the sessions.xml
file should be located in the WEB-INF\classes
directory. When using EJB 3.0, TopLink automatically loads the ejb3-toplink-sessions.xml
file.
- 7096: CANNOT_COMMIT_UOW_AGAIN
-
Cause: TopLink cannot invoke commit
method on an inactive unit of work that was committed or released.
-
Action: Ensure you invoke
commit
method on a new unit of work or invoke
commitAndResume
method so that the unit of work can be reused. For more information about the
commitAndResume
method, see
Oracle TopLink API Reference.
- 7097: OPERATION_NOT_SUPPORTED
-
Cause: TopLink cannot invoke an unsupported operation on an object.
-
Action: Do not use the operation indicated in the stack trace.
- 7099: PROJECT_XML_NOT_FOUND
-
Cause: The file name specified for the XML-based project is incorrect.
-
Action: Verify the name and location of the file.
- 7101: NO_TOPLINK_EJB_JAR_XML_FOUND
-
Cause: The toplink-ejb-jar.xml
file was not found.
-
Action: Ensure that the file is on your classpath.
- 7102: NULL_CACHE_KEY_FOUND_ON_REMOVAL
-
Cause: Encountered a null
value for a cache key while attempting to remove an object from the identity map. The most likely cause of this situation is that the object has already been garbage-collected and therefore does not exist within the identity map.
-
Action: Ignore. The removeFromIdentityMap
method of the Session
is intended to allow garbage collection, which has already been done.
- 7103: NULL_UNDERLYING_VALUEHOLDER_VALUE
-
Cause: A null
reference was encountered while attempting to invoke a method on an object that uses proxy indirection.
-
Action: Check that this object is not null
before invoking its methods.
- 7104: INVALID_SEQUENCING_LOGIN
-
Cause: A separate connection(s) for sequencing was requested, but the sequencing login uses the external transaction controller.
-
Action: Either provide a sequencing login that does not use an external transaction controller or do not use separate connection(s) for sequencing.
- 7105: INVALID_ENCRYPTION_CLASS
-
Cause: Error encountered while converting encryption class.
-
Action: Ensure the encryption class name is correctly specified in the sessions.xml
file and that the encryption class specified is available on the classpath. A common reason for this exception is the usage of JDK 1.3 and earlier versions. The TopLink JCE encryption mechanism requires JDK 1.4 and later (or JDK 1.3 configured with the JCE plug-in) to function properly.
- 7106: ERROR_ENCRYPTING_PASSWORD
-
Cause: Error encountered during password string encryption.
-
Action: An error is raised while trying to encrypt the password string. A common reason for this exception is the usage of JDK 1.3 and earlier versions. The TopLink JCE encryption mechanism requires JDK 1.4 and later (or JDK 1.3 configured with the JCE plug-in) to function properly.
- 7107: ERROR_DECRYPTING_PASSWORD
-
Cause: Error encountered during password string decryption.
-
Action: An exception was raised while trying to decrypt the password string. A common reason for this exception is the usage of JDK 1.3 and earlier versions. The TopLink JCE encryption mechanism requires JDK 1.4 and later (or JDK 1.3 configured with the JCE plug-in) to function properly.
- 7108: NOT_SUPPORTED_FOR_DATASOURCE
-
Cause: Attempt to use an operation that is not supported for nonrelational platforms.
-
Action: Do not use this operation on the current platform, or use a relational database platform.
- 7109: PROJECT_LOGIN_IS_NULL
-
Cause: The login in the project used to create the session is null
meaning no login was specified for the TopLink project. The login used for the project must be a valid login.
-
Action: Add login information using TopLink Workbench or using Java code.
- 7110: HISTORICAL_SESSION_ONLY_SUPPORTED_ON_ORACLE
-
Cause: Attempt to use a HistoricalSession with a non-Oracle database. At present,
HistoricalSession
only works with Oracle databases that have a Flashback feature (Oracle database 9.2.0.4 or later).
Generic history support (see oracle.toplink.history.HistoryPolicy
) works for any database. If a HistoryPolicy
is incorrectly set, TopLink may be defaulting to using flashback instead. An AsOfSCNClause
is implicitly flashback only.
-
Action: Ensure that the HistoryPolicy
is set correctly.
- 7111: CANNOT_ACQUIRE_HISTORICAL_SESSION
-
Cause: Invalid attempt to acquire a HistoricalSession: you may not acquire a HistoricalSession
from a unit of work, another HistoricalSession
, a ServerSession
, or a ServerSessionBroker
. You may acquire a HistoricalSession from a regular session, a ClientSession
, or a ClientSessionBroker
.
-
Action: To recover objects, read the objects in both a HistoricalSession
and UnitOfWork
, and call mergeCloneWithReferences(historicalObject)
method on the UnitOfWork
.
- 7112: FEATURE_NOT_SUPPORTED_IN_JDK_VERSION
-
Cause: Attempt to use a TopLink feature that is not available in the current JDK version.
-
Action: You must use the version of the JDK that supports this feature.
- 7113: PLATFORM_DOES_NOT_SUPPORT_CALL_WITH_RETURNING
-
Cause: Attempt to use an unsupported call with returning for a platform.
-
Action: Set stored procedures with output parameters in setInsertQuery
, setInsertCall
, setUpdateQuery
, or setUpdateCall
methods of the DescriptorQueryManager
.
- 7114: ISOLATED_DATA_NOT_SUPPORTED_IN_CLIENTSESSIONBROKER
-
Cause: Attempt to use isolated data within a ClientSessionBroker
: isolated data is not currently supported within a ClientSessionBroker
. Session contains descriptors representing isolated data.
-
Action: Ensure that isolated data is not used.
- 7115: CLIENT_SESSION_CANNOT_USE_EXCLUSIVE_CONNECTION
-
Cause: Attempt to use ExclusiveConnection
for ClientSession
reads without isolated data. This is not supported.
-
Action: You must update the ConnectionPolicy
used to remove ExclusiveConnection
configuration, or the project to set certain data to be exclusive.
- 7116: INVALID_METHOD_ARGUMENTS
-
Cause: Invalid arguments are used in the method.
-
Action: Refer to the public API of the calling method and use valid values for the arguments.
- 7117: MULTIPLE_CURSORS_NOT_SUPPORTED
-
Cause: Attempt to use more than one cursor in a SQLCall
.
-
Action: TopLink currently supports only one cursor per call.
- 7118: WRONG_USAGE_OF_SET_CUSTOM_SQL_ARGUMENT_TYPE_METOD
-
Cause: The setCustomSQLArgumentType
method was invoked on SQLCall
, but this method does not use custom SQL.
-
Action: Don't call this method on SQLCall
that does not use custom SQL.
- 7119: CANNOT_TRANSLATE_UNPREPARED_CALL
-
Cause: Unprepared SQLCall
attempted translation.
-
Action: SQLCall
must be prepared before translation.
- 7120: CANNOT_SET_CURSOR_FOR_PARAMETER_TYPE_OTHER_THAN_OUT
-
Cause: Attempt to use parameter in SQLCall
as a cursor, but this parameter is of type other than OUT
.
-
Action: Ensure that the parameter used as a cursor has parameter type OUT
.
- 7121: PLATFORM_DOES_NOT_SUPPORT_STORED_FUNCTIONS
-
Cause: Attempt to use stored functions for a platform that does not support stored functions.
-
Action: Do not define stored functions on this platform.
- 7122: EXCLUSIVE_CONNECTION_NO_LONGER_AVAILABLE
-
Cause: The exclusive connection associated with the session is unavailable for the query on the object.
Isolated objects with indirection read through an ExclusiveIsolatedClientSession
must not have indirection triggered after the ExclusiveIsolatedClientSession
has been released.
-
Action: Reread the objects through the current ExclusiveIsolatedClientSession
.
- 7123: UNIT_OF_WORK_IN_TRANSACTION_COMMIT_PENDING
-
Cause: Attempt to perform an operation that is not allowed at this time: a successful writeChanges
operation has been called on this UnitOfWork
. As the commit process has been started, but not yet finalized, the only supported operations now are commit
, commitAndResume
, release
, any nonobject level query, or SQLCall
execution.
-
Action: Execute one of the supported operations to continue.
- 7124: UNIT_OF_WORK_AFTER_WRITE_CHANGES_FAILED
-
Cause: Attempt to perform an operation that is not allowed at this time: an unsuccessful writeChanges
operation has been called on this UnitOfWork
. Given the possibility that partial changes have been written to the data store but not rolled back (if inside external transaction), the only supported operations now are release, global transaction rollback, any nonobject level query or SQLCall
execution.
-
Action: Determine the cause of the original failure and retry in a new UnitOfWork
.
- 7125: INACTIVE_UNIT_OF_WORK
-
Cause: Attempt to perform an operation on an inactive unit of work: once the UnitOfWork
has been committed and/or released, no further operation should be performed on it.
-
Action: Acquire a new UnitOfWork
, or use the commitAndResume
method instead of commit
method in the future.
- 7126: CANNOT_WRITE_CHANGES_ON_NESTED_UNIT_OF_WORK
-
Cause: Attempt to call a writeChanges
method on a NestedUnitOfWork
. This is not supported: a nested UnitOfWork
never writes changes directly to the data store, only the parent UnitOfWork
does.
-
Action: Call the commit
method instead, and then the writeChanges
method on the parent UnitOfWork
.
- 7127: CANNOT_WRITE_CHANGES_TWICE
-
Cause: Attempt to write changes to the data store more than once: you can only write changes to the data store once.
-
Action: You must either roll back the transaction, or call the commit
method on this UnitOfWork
and start a new transaction.
- 7128: ALREADY_LOGGED_IN
-
Cause: Attempt to log in to a session more than once.
-
Action: Do not try to login again.
- 7129: INVALID_NULL_METHOD_ARGUMENTS
-
Cause: Attempt to use null values for arguments in a method that cannot have null values.
-
Action: Ensure that the method's arguments do not have a null value.
- 7130: NESTED_UOW_NOT_SUPPORTED_FOR_ATTRIBUTE_TRACKING
-
Cause: Attempt to use a nested UnitOfWork
with attribute change tracking. This is not supported.
-
Action: Do not use a nested UnitOfWork
with attribute change tracking.
- 7131: WRONG_COLLECTION_CHANGE_EVENT_TYPE
-
Cause: The collection change event is of the wrong type. The collection change event type has to be added or removed.
-
Action: Ensure that the collection change event type used is defined in CollectionChangeEvent
.
- 7132: WRONG_CHANGE_EVENT
-
Cause: Wrong event class. Only PropertyChangeEvent
and CollectionChangeEvent
classes are supported.
-
Action: Ensure that the event class is either PropertyChangeEvent
or CollectionChangeEvent
.
- 7133: OLD_COMMIT_NOT_SUPPORTED_FOR_ATTRIBUTE_TRACKING
-
Cause: Attempt to use old commit for attribute change tracking. This is not supported.
-
Action: Do not try to use attribute change tracking with an old commit.
- 7134: SERVER_PLATFORM_IS_READ_ONLY_AFTER_LOGIN
-
Cause: Attempt to make changes to the server platform after login: the server platform is read-only after login.
-
Action: Changes to the server platform must be made before login. You must either:
-
CMP application: define a class that implements oracle.toplink.ejb.cmp.DeploymentCustomization
, and customize its public String beforeLoginCustomization(Session session)
method to change your server platform. Consult the documentation for defining a customization class in your orion-ejb-jar.xml
file.
-
Non-CMP/POJO application: define a subclass of oracle.toplink.sessions.SessionEventAdapter
, and override the public void preLogin(SessionEvent event)
method to change your server platform. The session is contained in the event. Consult the documentation for sessions.xml
and using SessionEventAdapter
.
- 7135: CANNOT_COMMIT_AND_RESUME_UOW_WITH_UPDATE_ALL_QUERIES
-
Cause: Attempt to commit and resume a UnitOfWork
containing an UpdateAllQuery
. This is not supported.
-
Action: You must either commit and continue in a new UnitOfWork
, or do not use UpdateAllQuery
.
- 7136: NESTED_UOW_NOT_SUPPORTED_FOR_UPDATE_ALL_QUERY
-
Cause: Attempt to use a nested UnitOfWork
for an UpdateAll query. This is not supported.
-
Action: Do not use a nested UnitOfWork
for an UpdateAllQuery
.
- 7137: UNFETCHED_ATTRIBUTE_NOT_EDITABLE
-
Cause: Attempt to edit an unfetched attribute: the object is partially fetched (using fetch group), the unfetched attribute is not editable.
-
Action: Do not edit the unfetched attribute, or explicitly fetch the attribute before editing it.
- 7138: OBJECT_NEED_IMPL_TRACKER_FOR_FETCH_GROUP_USAGE
-
Cause: Attempt to use a fetch group with the object that does not implement FetchGroupTracker: the object must implement FetchGroupTracker
in order to use fetch group.
-
Action: The domain call must implement FetchGroupTracker
in order to use fetch group.
- 7139: UPDATE_ALL_QUERIES_NOT_SUPPORTED_WITH_OTHER_WRITES
-
Cause: Attempt to issue an UpdateAll query within a UnitOfWork
containing other write operations.
-
Action: Do not use UpdateAllQuery
within a UnitOfWork
containing other write operations.
- 7140: WRONG_SEQUENCE_TYP
-
Cause: Sequence type does not have the method.
-
Action: Do not call this method on this type of sequence.
- 7144: PLATFORM_DOES_NOT_SUPPORT_SEQUENCE
-
Cause: Platform does not support sequence.
-
Action: Do not use this sequence type on this platform.
- 7145: SEQUENCE_CANNOT_BE_CONNECTED_TO_TWO_PLATFORMS
-
Cause: Two attempts have been made to connect to sequence, but the sequence is already connected to a platform. Likely the two sessions share the DatasourcePlatform
object.
-
Action: Ensure that the sequence is used by a single session only.
- 7146: QUERY_SEQUENCE_DOES_NOT_HAVE_SELECT_QUERY
-
Cause: QuerySequence
does not have select query.
-
Action: Ensure that the sequence has a select query.
- 7147: CREATE_PLATFORM_DEFAULT_SEQUENCE_UNDEFINED
-
Cause: Attempt to create platform default sequence by a platform that does not override the createPlatformDefaultSequence
method.
-
Action: You must either override the createPlatformDefaultSequence
method on the platform, or explicitly set default sequence by calling setDefaultSequence
on DatasourceLogin
.
- 7148: CANNOT_RESUME_SYNCHRONIZED_UOW
-
Cause: Attempt to use commitAndResume()
method with a JTA or a synchronized unit of work.
-
Action: Do not use commitAndResume() with a JTA or a synchronized unit of work.
- 7149: INVALID_COMPOSITE_PK_SPECIFICATION
-
Cause: Attempt to provide an invalid specification of the composite primary key: the names of the primary key fields or properties in the primary key class PKClassName
and those of the entity bean class ClassName
must correspond and their types must be the same.
-
Action: Ensure that the names of the primary key fields or properties in the primary key class PKClassName
and those of the entity bean class ClassName
correspond, and their types are the same.
- 7150: INVALID_FETCH_LAZY_TYPE
-
Cause: Attempt to specify an invalid LAZY
fetch type on an attribute attributeName
within entity class ClassName
.
-
Action: Provide the fetch type other than LAZY
on an attribute attributeName
within entity class ClassName
.
- 7151: INVALID_ANNOTATION_SPECIFIED
-
Cause: An invalid EJB 3.0 annotation annotation
has been specified in the entity class ClassName
on accessor method methodName
. It is not supported.
-
Action: Specify a valid annotation on this accessor method.
- 7152: TABLE_PER_CLASS_INHERITANCE_NOT_SUPPORTED
-
Cause: Table per class inheritance is not supported. Entity class ClassName
.
-
Action: Use different approach.
- 7153: NAMED_QUERY_ALREADY_EXISTS
-
Cause: The descriptor named query query
already exists. Named query names must be unique.
-
Action: Provide a unique name for the query.
- 7154: ASSOCIATION_TABLE_ANNOTATION_NOT_FOUND
-
Cause: An annotation @AssociationTable
was not found on either the owning mapping class ClassName
, or nonowning mapping class DifferentClassName
for the @ManyToMany
annotation.
-
Action: Ensure that the annotation @AssociationTable
exists.
- 7155: ATTRIBUTE_OVERRIDE_COLUMNS_NOT_SPECIFIED
-
Cause: An annotation @AttributeOverride
columns was not specified on a mapping mapping
from entity class ClassName
.
-
Action: Specify this annotation.
- 7156: UNABLE_TO_LOAD_CLASS
-
Cause: TopLink was unable to find the class ClassName
. Ensure the class name/path is correct and available to the class loader.
-
Action: Ensure the class name and/or path is correct and available to the class loader.
- 7157: INVALID_COLUMN_ANNOTATION_ON_RELATIONSHIP
-
Cause: Attempt to use an invalid@Column
annotation by the entity class ClassName
to map its relationship attribute attribute
.
-
Action: Ensure the entity class ClassName
uses a @JoinColumn
attribute instead of a @Column
attribute to map its relationship attribute attributeName.
- 7158: ERROR_PROCESSING_NAMED_QUERY_ANNOTATION
-
Cause: Error encountered when building the @NamedQuery
annotation from entity class ClassName
.
-
Action: Ensure the correctness of the annotation specification.
- 7159: INVALID_NAMED_QUERY_ANNOTATION_NAME
-
Cause: Invalid use of an unnamed @NamedQuery
annotation with the query string string
by an entity class ClassName
.
-
Action: Specify a name for @NamedQuery
.
- 7160: ONE_TO_MANY_HAS_BOTH_ASSOCIATIONTABLE_AND_JOINCOLUMN_ANNOTATIONS
-
Cause: @OneToMany
annotation for attribute attributeName
in entity class ClassName
has both an @AssocationTable
and @JoinColumn
(s) annotations specified.
-
Action: Specify one annotation only: @AssocationTable
or @JoinColumn
(s).
- 7161: NO_PK_ANNOTATIONS_FOUND
-
Cause: Primary key annotation is not specified for the entity class ClassName.
-
Action: Define either an @Id
, @EmbeddedId
or an @IdClass
annotation.
- 7162: MULTIPLE_EMBEDDED_ID_ANNOTATIONS_FOUND
-
Cause: Multiple @EmbeddedId
annotations are specified (on attributeName
and differentAttributeName
) for entity class ClassName
.
-
Action: Specify only one @EmbeddedId
annotation for this entity.
- 7163: EMBEDDED_ID_AND_ID_ANNOTATIONS_FOUND
-
Cause: Entity class ClassName has both an @EmbdeddedId
(on attribute attributeName
) and an @Id
(on attribute differentAttributeName
).
-
Action: Specify only one ID type on this entity: either @EmbdeddedId
or @Id
.
- 7164: INVALID_CLASS_TYPE_FOR_BLOB_ANNOTATION
-
Cause: Attribute attributeName
in an entity class ClassName has an invalid type for a @Lob
annotation of type BLOB
.
-
Action: Define this attribute as a java.sql.Blob
, byte[]
, Byte[]
or a Serializable
type.
- 7165: INVALID_CLASS_TYPE_FOR_CLOB_ANNOTATION
-
Cause: Attribute attributeName
in entity class ClassName has an invalid type for a @Lob
annotation of type CLOB
.
-
Action: Define this attribute as a java.sql.Clob
, char[]
, Character[]
or String
type.
- 7166: ANNOTATIONS_CONFLICT
-
Cause: Conflict between annotations @Annotation
and @DifferentAnnotation
.
-
Action: Ensure that these two annotations are not conflicting.
- 7167: RESERVED_NAME
-
Cause: Attempt to use a reserved annotation name AnnotationName
by an entity class ClassName: cannot use this name, because it is reserved for name.
-
Action: Specify a different name for this annotation.
- 7168: ID_ANNOTATION_CANNOT_SPECIFY_GENERATOR
-
Cause: Attempt to specify a generator with type Type
by an annotation @Annotation
.
-
Action: Ensure that this annotation specifies a generator of a different type.
- 7169: INVALID_ENTITY_LISTENER_CALLBACK_METHOD_ARGUMENTS
-
Cause: The callback method methodName
on the entity listener ListenerClassName
has an incorrect signature.
-
Action: Provide only one parameter of type Object
for this method.
- 7170: INVALID_ENTITY_CALLBACK_METHOD_ARGUMENTS
-
Cause: The callback method methodName
on the entity class ClassName
has an incorrect signature. It should not have any parameters.
-
Action: Do not provide any parameters for this method.
- 7171: INVALID_CALLBACK_METHOD
-
Cause: Attempt to use an invalid callback method methodName on the listener class ListenerClassName
.
-
Action: Ensure the validity of the method.
- 7172: ERROR_INSTANTIATING_ENTITY_LISTENER
-
Cause: TopLink was unable to instantiate the entity listener using the @EntityListener
annotation.
-
Action: Ensure that the annotation is correctly specified.
- 7173: WRONG_PROPERTY_NAME_IN_CHANGE_EVENT
-
Cause: Attempt to fire a property change event on a nonexisting property propertyName
in a change event EventClassName
.
-
Action: Ensure that this property exists.
- 7174: NO_CORRESPONDING_SETTER_METHOD_DEFINED
-
Cause: The getter method methodName on an entity class ClassName
does not have a corresponding setter method defined.
-
Action: Define a corresponding setter method.
- 7175: UNSUPPORTED_CASCADE_LOCKING_MAPPING
-
Cause: Attempt to use the mapping MappingType
that does not support cascading version optimistic locking.
-
Action: Use a different mapping.
- 7176: UNSUPPORTED_CASCADE_LOCKING_MAPPING_WITH_CUSTOM_QUERY
-
Cause: Attempt to use the mapping MappingType
that does not support cascading version optimistic locking. This mapping has a custom query.
-
Action: Use a different mapping.
- 7177: UNSUPPORTED_CASCADE_LOCKING_DESCRIPTOR
-
Cause: Attempt to use an aggregate descriptor DescriptorName
that has privately-owned mappings: aggregate descriptors do not support cascading version optimistic locking.
-
Action: Use a different descriptor.
- 7178: ORACLEOCIPROXYCONNECTOR_REQUIRES_ORACLEOCICONNECTIONPOOL
-
Cause: Attempt to use invalid arguments in an entity callback method methodName
on a OracleOCIProxyConnector
: it requires the OracleOCIConnectionPool
data source.
-
Action: Provide OracleOCIProxyConnector
with the OracleOCIConnectionPool
argument.
- 7179: ORACLEJDBC10_1_0_2PROXYCONNECTOR_REQUIRES_ORACLECONNECTION
-
Cause: Attempt to use invalid arguments in an entity callback method methodName
on a OracleJDBC10_1_0_2ProxyConnector
.
-
Action: Provide OracleJDBC10_1_0_2ProxyConnector
with data source producing Oracle Connections.
- 7180: ORACLEJDBC10_1_0_2PROXYCONNECTOR_REQUIRES_ORACLECONNECTION_VERSION
-
Cause: Attempt to use the OracleJDBC10_1_0_2ProxyConnector
with Oracle JDBC version 10.1.0.1 or earlier: OracleJDBC10_1_0_2ProxyConnector
requires Oracle JDBC version 10.1.0.2 or later.
-
Action: Provide OracleJDBC10_1_0_2ProxyConnector
with Oracle JDBC version 10.1.0.2 or later in order for the OracleConnection to declare the openProxySession
method.
- 7181: ORACLEJDBC10_1_0_2PROXYCONNECTOR_REQUIRES_INT_PROXYTYPE
-
Cause: Attempt to use an invalid type for the proxytype
property on the OracleJDBC10_1_0_2ProxyConnector
: it requires the proxytype
property to be an int
converted to a String
.
-
Action: On the OracleJDBC10_1_0_2ProxyConnector
, provide the proxytype property of type int
converted to a String
. For example, Integer.toString(OracleConnection.PROXYTYPE_USER_NAME)
.
- 7182: COULD_NOT_FIND_DRIVER_CLASS
-
Cause: TopLink could not find the driver class.
-
Action: Ensure that the driver class exists and is on the classpath.
- 7183: ERROR_CLOSING_PERSISTENCE_XML
-
Cause: TopLink cannot close persistence.xml
file.
-
Action: If you modified the persistence.xml
, ensure that this file is not read-only.
- 7184: CONFIG_FACTORY_NAME_PROPERTY_NOT_SPECIFIED
-
Cause: The system property propertyName is not specified.
-
Action: Set this property to a class that defines a getContainerConfig()
method.
- 7185: CONFIG_FACTORY_NAME_PROPERTY_NOT_FOUND
-
Cause: TopLink cannot find class ClassName.
-
Action: Ensure that the class exists and is properly specified.
- 7186: CANNOT_INVOKE_METHOD_ON_CONFIG_CLASS
-
Cause: TopLink cannot invoke method methodName on configuration class ClassName.
-
Action: Ensure that this method exists in this class.
- 7187: CONFIG_METHOD_NOT_DEFINED
-
Cause: Class ClassName does not define a public static method methodName.
-
Action: In the class ClassName, define a public static method methodName that has no parameters and returns a Collection
.
- 7188: CLASS_LIST_MUST_NOT_BE_NULL
-
Cause: Class list is null
.
-
Action: Provide a non-null
class list.
- 7189: CURRENT_LOADER_NOT_VALID
-
Cause: TopLink cannot create a temporary class loader from the current loader ClassLoaderName
.
-
Action: Ensure the validity of the current class loader.
- 7190: METHOD_FAILED
-
Cause: Failure in the execution of the methodName method.
-
Action: Ensure the correctness of the method.
- 7191: ENTITY_CLASS_NOT_FOUND
-
Cause: An entity class ClassName was not found using class loader ClassLoaderName.
-
Action: Ensure that the entity class exists and is on the classpath.
- 7192: CLASS_FILE_TRANSFORMER_THROWS_EXCEPTION
-
Cause: Class file transformer TransformerName
threw an exception when performing transform()
method on class ClassName
.
-
Action: Ensure the correctness of the transform()
method. Check the internal exception for details on the root cause of this exception
- 7193: JAR_FILES_IN_PERSISTENCE_XML_NOT_SUPPORTED
-
Cause: Attempt to use JAR files in the persistence.xml
file: JAR files are not supported in this version of TopLink.
-
Action: Do not use JAR files.
- 7194: FLUSH_MODE_NOT_SUPPORTED
-
Cause: Attempt to use an unsupported method setFlushMode()
.
-
Action: Do not use this method.
- 7195: COULD_NOT_BIND_JNDI
-
Cause: TopLink could not bind name
to anotherName
.
-
Action: Ensure the correct use of this binding.
- 7196: EXCEPTION_CONFIGURING_EM_FACTORY
-
Cause: Exception configuring EntityManagerFactory
.
-
Action: Ensure the correct configuration of this factory class. Check the internal exception for details on the root cause of this exception
- 7197: NULL_PK_IN_UOW_CLONE
-
Cause: TopLink could not calculate changes, because the primary key is set to null
.
-
Action: Set the primary key to a non-null
value.
- 7198: CANNOT_CAST_TO_CLASS
-
Cause: Attempt to cast an instance of class ClassName
to AnotherClassName
. This is an invalid cast.
-
Action: Provide a valid cast.
- 7199: NO_MAPPED_BY_ATTRIBUTE_FOUND
-
Cause: An attribute attributeName
in an entity class ClassName has a mappedBy
value of value
. This value does not exist in its owning entity class ClassName.
-
Action: If the owning entity class is an @EmbeddableSuperclass
, this is invalid. Make your attribute reference the correct subclass.
- 7200: NAME_AND_REF_NAME_MUST_BE_SPECIFIED
-
Cause: Either name or referencedColumnName element is not specified: if there is more than one join column, both the name
and the referencedColumnName
elements must be specified in each @JoinColumn
annotation.
-
Action: Ensure that both the name
and the referencedColumnName
elements are specified in each @JoinColumn
annotation.
EJB QL Exceptions (8001 – 8010)
EJBQLException
is a run-time exception that is raised when the EJB QL string does not parse properly, or the contents cannot be resolved within the context of the TopLink session. The associated message typically includes a reference to the EJB QL string that caused the problem.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-8 EJB QL Exception
EXCEPTION [TOPLINK – 8002]: oracle.toplink.exceptions.EJBQLException
EXCEPTION DESCRIPTION: TopLink has encountered a problem while parsing the EJB QL string.
- 8001: recognitionException
-
Cause: The TopLink EJB QL parser does not recognize a clause in the EJB QL string.
-
Action: Validate the EJB QL string.
- 8002: generalParsingException
-
Cause: TopLink has encountered a problem while parsing the EJB QL string.
-
Action: Check the internal exception for details on the root cause of this exception.
- 8003: classNotFoundException
-
Cause: The class specified in the EJB QL string was not found.
-
Action: Ensure that the class is on the appropriate classpath.
- 8004: aliasResolutionException
-
Cause: TopLink was unable to resolve the alias used in the EJB QL string.
-
Action: Validate the identifiers used in the EJB QL string.
- 8005: resolutionClassNotFoundException
-
Cause: TopLink was unable to resolve the class for an alias. This means that the class specified cannot be found.
-
Action: Ensure that the class is specified properly and is on the classpath.
- 8006: missingDescriptorException
-
Cause: The class specified in the query does not have a TopLink descriptor.
-
Action: Ensure that the class has been mapped and is specified correctly in the EJB QL string.
- 8009: expressionNotSupported
-
Cause: An unsupported expression was used in the EJB QL.
-
Action: Change the query to use only supported expressions.
- 8010: generalParsingException2
-
Cause: TopLink has encountered a problem while parsing the EJB QL string.
-
Action: Check the internal exception for details on the root cause of this exception.
Session Loader Exceptions (9000 - 9010)
SessionLoaderException
is a run-time exception that is raised if the session manager encounters a problem loading session information from a sessions.xml
(for non-EJB applications) or toplink-ejb-jar.xml
(for EJB applications) properties file.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-9 Session Loader Exception
EXCEPTION [TOPLINK – 9004]: oracle.toplink.exceptions.SessionLoaderException
EXCEPTION DESCRIPTION: The <project-xml> file MyProject was not found on the classpath, nor on the filesystem.
- 9000: FINAL_EXCEPTION
-
Cause: The session loader caught one or more XML parsing exceptions while loading session information. The specific XML exceptions follow.
-
Action: Verify your session configuration XML file.
- 9001: UNKNOWN_TAG
-
Cause: An unknown tag was encountered in the specified XML node.
-
Action: Examine the specified XML node in your session configuration XML file. Ensure that you use only the tags defined for that node in the appropriate TopLink XSD. See the directory where you installed TopLink (for example, <ORACLE_HOME
>/toplink/config/xsds
)
- 9002: UNABLE_TO_LOAD_PROJECT_CLASS
-
Cause: The specified class loader could not load a class with the name given by the project-name
property.
-
Action: Verify the value of the project-name
property and if correct, ensure that a class with that name is in your classpath.
- 9003: UNABLE_TO_PROCESS_TAG
-
Cause: The session loader caught an exception while either parsing the value of the specified tag or calling the setter method associated with the specified tag.
-
Action: Verify the value shown for the specified tag.
- 9004: COULD_NOT_FIND_PROJECT_XML
-
Cause: The session loader could not find the file identified by the project-xml
tag on either the classpath or the file system.
-
Action: Verify the value of the project-xml
tag and if correct, ensure that a project.xml
file with that name exists in your classpath or file system.
- 9005: FAILED_TO_LOAD_PROJECT_XML
-
Cause: The session loader caught an exception while trying to load the file identified by the project-xml
tag either because the file could not be found, or because the file could not be parsed.
-
Action: Verify the configuration of the project XML file and ensure that a project.xml
file with that name specified by the project-xml
tag exists in your classpath or file system.
- 9006: UNABLE_TO_PARSE_XML
-
Cause: The session loader caught a SAX exception while trying to parse the XML at the given line and column of the specified XML file. Oracle TopLink 10g supports only UTF-8 encoding. The TopLink SAXParseException
occurs if you attempt to read a non-UTF-8 formatted XML file.
-
Action: Verify that the XML is correctly formatted at the given line and column. Alternatively, ensure the Oracle parser is in your classpath and that it appears before any other XML parser.
- 9007: NON_PARSE_EXCEPTION
-
Cause: The session loader caught an exception unrelated to XML parsing (for example, a premature end-of-file exception) while trying to parse the specified XML file.
-
Action: Verify the integrity of the XML file.
- 9008: UN_EXPECTED_VALUE_OF_TAG
-
Cause: The value of an XML tag does not correspond to any known TopLink required values.
-
Action: Please verify the list of values for this tag.
- 9009: UNKNOWN_ATTRIBUTE_OF_TAG
-
Cause: There is an incorrect name value pair when processing transport properties for the XSD tag.
-
Action: Please verify that all properties have both the name and the value filled in, in the session configuration XML file.
- 9010: XML_SCHEMA_PARSING_ERROR
-
Cause: An exception was raised while parsing the XML file against the XML schema.
-
Action: Examine the exception and take the appropriate action.
Communication Exceptions (12000 - 12003)
CommunicationException
is a run-time exception that wraps all RMI, CORBA, or input and output exceptions that occur.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-10 Communication Exception
EXCEPTION [TOPLINK – 12000]: oracle.toplink.exceptions.CommunicationException
EXCEPTION DESCRIPTION: Error Sending connection service to myService.
- 12000: ERROR_SENDING_CONNECTION_SERVICE
-
Cause: Failed to add a connection to CacheSynchronizationManager
or RemoteCommandManager
.
-
Action: See the generated exception for the root cause.
- 12001: UNABLE_TO_CONNECT
-
Cause: CacheSynronizationManager
failed to connect to the specified service.
-
Action: See the generated exception for the root cause.
- 12002: UNABLE_TO_PROPAGATE_CHANGES
-
Cause: CacheSynronizationManager
failed to propagate changes to the specified service.
-
Action: See the generated exception for the root cause.
- 12003: ERROR_IN_INVOCATION
-
Cause: Error invoking a remote call.
-
Action: See the generated exception for the root cause.
EIS Exceptions (17007 – 17025), 90000, 91000
EISException
is a run-time exception that is raised when invoking EIS interactions. For more information on EIS interactions, see "Enterprise Information System (EIS) Interactions".
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-11 JMS Processing Exception
EXCEPTION [TOPLINK – 17010]: oracle.toplink.eis.EISException
EXCEPTION DESCRIPTION: Output record contains an unsupported message type.
- 17007: PROP_NOT_SET
-
Cause: The specified property is not set.
-
- 17008: INVALID_PROP
-
Cause: Invalid property encountered.
-
- 17009: PROPS_NOT_SET
-
Cause: The specified properties are not set.
-
- 17010: OUTPUT_UNSUPPORTED_MSG_TYPE
-
Cause: The output record contains an unsupported message type.
-
Action: Verify your interaction and ensure that you specify a supported message type. Ensure that the required connector JAR file is on your classpath (see
"EIS Projects").
- 17011: NO_CONN_FACTORY
-
Cause: The connection factory is not specified.
-
- 17012: INVALID_INTERACTION_SPEC_TYPE
-
Cause: InteractionSpec
is not a CciJMSInteractionSpec
.
-
Action: Verify your interaction and ensure that you specify a valid interaction specification type (CciJMSInteractionSpec). Ensure that the required connector JAR file is on your classpath (see
"EIS Projects").
- 17013: INVALID_RECORD_TYPE
-
Cause: Record
is not a CciJMSRecord
.
-
Action: Verify your interaction and ensure that you specify a valid record type (CciJMSRecord). Ensure that the required connector JAR file is on your classpath (see
"EIS Projects").
- 17014: UNKNOWN_INTERACTION_SPEC_TYPE
-
Cause: Unknown interaction specification type.
-
Action: Verify your interaction and ensure that you specify a valid interaction specification type. Ensure that the required connector JAR file is on your classpath (see
"EIS Projects").
- 17015: INVALID_INPUT
-
Cause: Invalid input: input must contain a single text element.
-
- 17016: TIMEOUT
-
Cause: A time-out occurred–no message was received.
-
Action: Verify your interaction and the EIS on which you invoked it.
- 17017: INPUT_UNSUPPORTED_MSG_TYPE
-
Cause: Input record contains an unsupported message type.
-
Action: Verify your interaction and ensure that you specify a valid message type. Ensure that the required connector JAR file is on your classpath (see
"EIS Projects").
- 17018: INVALID_METHOD_INVOCATION
-
Cause: TopLink cannot invoke begin
method on a nontransacted session.
-
Action: To be determined.
- 17019: TX_SESSION_TEST_ERROR
-
Cause: Problem testing for transacted session.
-
Action: To be determined.
- 17020: INVALID_AQ_INTERACTION_SPEC_TYPE
-
Cause: InteractionSpec
is not an AQInteractionSpec
.
-
Action: Verify your interaction and ensure that you specify a valid Oracle AQ interaction specification type (AQInteractionSpec). Ensure that the required connector JAR file is on your classpath (see
"EIS Projects").
- 17021: INVALID_AQ_RECORD_TYPE
-
Cause: Record
is not an AQRecord
.
-
Action: Verify your interaction and ensure that you specify a valid Oracle AQ record type (AQRecord). Ensure that the required connector JAR file is on your classpath (see
"EIS Projects").
- 17022: INVALID_AQ_INPUT
-
Cause: Invalid input: input must contain a single raw element.
-
- 17023: INVALID_FACTORY_ATTRIBUTES
-
Cause: An exception occurred setting MQQueueConnectionFactory
attributes.
-
- 17024: COULD_NOT_DELETE_FILE
-
Cause: TopLink cannot delete the specified file.
-
Action: To be determined.
- 17025: GROUPING_ELEMENT_REQUIRED
-
Cause: No grouping element is specified: this mapping requires a foreign key grouping element, as mulitple foreign keys exist.
-
- 90000: RESOURCE_EXCEPTION
-
Cause: Unknown resource.
-
Action: See the generated exception for the root cause.
- 91000: EIS_EXCEPTION
-
Cause: General EIS-related failure.
-
Action: See the generated exception for the root cause.
JMS Processing Exceptions (18001 - 18004)
JMSProcessingException
is a run-time exception that is raised when processing JMS messages.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-12 JMS Processing Exception
EXCEPTION [TOPLINK – 18001]: oracle.toplink.exceptions.JMSProcessingException
EXCEPTION DESCRIPTION: Error while processing incomming JMS message.
- 18001: DEFAULT
-
Cause: Failed to process the incoming JMS message.
-
Action: See the generated exception for the root cause.
- 18002: NO_TOPIC_SET
-
Cause: JMSClusteringService
failed to start because the Topic
created in the JMS service for the interconnection of sessions is null
.
-
Action: Ensure that the Topic
created in the JMS service for the interconnection of sessions is set in the JMSClusteringService
.
- 18003: MDB_ERROR_LOOKUP_SESSION_NAME_ENV
-
Cause: Failure in looking up the session's name defined it the env-entry
element of the message-driven bean.
-
Action: Verify the correctness of the env-entry
element definition of the Message Driven Bean.
- 18004: MDB_FOUND_NO_SESSION
-
Cause: The message-driven bean (MDB) cannot find the session.
-
Action: Ensure that the session that this MDB's getSession()
method returns is not null
session.
Default Mapping Exceptions (20001 - 20008)
DefaultMappingException
is a run-time exception that is raised when an error occurs during OC4J CMP default mapping.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-13 Default Mapping Exception
EXCEPTION [TOPLINK – 20002]: oracle.toplink.exceptions.DefaultMappingException
EXCEPTION DESCRIPTION: The finder method with the parameters as defined in the ejb-jar.xml file, is not found in the home of bean.
- 20001: FINDER_PARAMETER_TYPE_NOT_FOUND
-
Cause: TopLink could not find the parameter type, defined in the ejb-jar.xml
file of the finder in the entity bean.
-
Action: Check the finder definition in the ejb-jar.xml
file and the bean home to ensure that the named finder has the specified method parameter type(s).
- 20002: FINDER_NOT_DEFINED_IN_HOME
-
Cause: The finder method with the parameters as defined in the ejb-jar.xml
file is not found in the home of bean.
-
Action: Check the ejb-jar.xml
file and the bean home to ensure that the finder with the specified name and method parameter type(s) are defined.
- 20003: EJB_SELECT_NOT_DEFINED_IN_BEAN
-
Cause: The ejbSelect
method with the parameters, as defined in the ejb-jar.xml
file, is not found in the bean class.
-
Action: Check the ejb-jar.xml
file and the bean class to ensure that the ejbSelect
method is defined with the specified name and method parameter type(s).
- 20004: FINDER_NOT_START_WITH_FIND_OR_EJBSELECT
-
Cause: The finder method of bean in the ejb-jar.xml
file is not well defined. It should start with either find
or ejbSelect
.
-
Action: Check the ejb-jar.xml
file to ensure that the query name starts with find
or ejbSelect
, according to the EJB specification.
- 20005: GETTER_NOT_FOUND
-
Cause: The abstract get
method is not defined in the bean.
-
Action: Check the ejb-jar.xml
file and the bean class to ensure that the abstract get
method is well defined.
- 20006: FIELD_NOT_FOUND
-
Cause: The CMP field is not defined in the bean.
-
Action: Check the ejb-jar.xml
file and the bean class to ensure that the CMP field defined in the ejb-jar.xml
file is also defined in the bean class.
For more information, see"Default Mapping in CMP Projects Using OC4J at Run Time".
Discovery Exceptions (22001 - 22004)
DiscoveryException
is a run-time exception that is raised when DiscoveryManager
is operating.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-14 Discovery Exception
EXCEPTION [TOPLINK – 22001]: oracle.toplink.exception.DiscoveryException
EXCEPTION DESCRIPTION: Could not join multicast group.
- 22001: ERROR_JOINING_MULTICAST_GROUP
-
Cause: DiscoveryManager
failed to join a multicast group due to a java.io.IOException
: either a MulticastSocket
could not be created, or the invocation of the joingGroup
method of the MulticastSocket failed.
-
Action: See the generated exception for the root cause.
- 22002: ERROR_SENDING_ANNOUNCEMENT
-
Cause: DiscoveryManager
failed to inform other services that its service had started up.
-
Action: Consider increasing the announcement delay: the amount of time in milliseconds that the service should wait between the time that this remote service is available and a session announcement is sent out to other discovery managers. This may be needed to give some systems more time to post their connections into the naming service. See the setAnnouncementDelay
method of the DiscoveryManager
.
- 22003: ERROR_LOOKING_UP_LOCAL_HOST
-
Cause: DiscoveryManager failed to do the lookup of a local host.
-
Action: See the generated exception for the root cause.
- 22004: ERROR_RECEIVING_ANNOUNCEMENT
-
Cause: DiscoveryManager
caught a java.io.IOException
while blocking for announcements from other DiscoveryManagers
.
-
Action: See the generated exception for the root cause.
Remote Command Manager Exceptions (22101 - 22111)
RemoteCommandManagerException
is a run-time exception that is raised when the remote command module is used.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-15 Remote Command Manager Exception
EXCEPTION [TOPLINK – 22104]: oracle.toplink.exceptions.RemoteCommandManagerException
EXCEPTION DESCRIPTION: Could not look up host name.
- 22101: ERROR_OBTAINING_CONTEXT_FOR_JNDI
-
Cause: Failure to get a JNDI context with the specified properties due to a javax.naming.NamingException
.
-
Action: See the generated exception for root cause. Verify that the properties for looking up the context are correct.
- 22102: ERROR_BINDING_CONNECTION
-
Cause: Failure to post a connection in the local naming service with the name serviceName
.
-
Action: See the generated exception for the root cause.
- 22103: ERROR_LOOKING_UP_REMOTE_CONNECTION
-
Cause: Failure to look up a remote connection with the specified name and URL.
-
Action: See the generated exception for the root cause. Verify that the remote connection and URL are correct.
- 22104: ERROR_GETTING_HOST_NAME
-
Cause: The getLocalHost
method of the java.net.InetAddress
failed to look up the specified host name.
-
Action: See the generated exception for the root cause. Verify that the host is online and reachable.
- 22105: ERROR_PROPAGATING_COMMAND
-
Cause: Failure to propagate a command to the specified connection.
-
Action: See the generated exception for the root cause. Verify that the remote host of the specified connection is online and reachable if the generated exception included a CommunicationException
.
- 22106: ERROR_CREATING_JMS_CONNECTION
-
Cause: Failure to create JMS connection with Topic
, Topic Factory
, and Context
properties.
-
Action: Verify that the JMS Topic is configured correctly with the application server and the specified Topic. Topic Factory and Context properties info can be used by a Java client to the JMS Topic.
- 22107: ERROR_UNBINDING_LOCAL_CONNECTION
-
Cause: Failure to establish a remove local connection in local naming service under name.
-
Action: Restart the application server or use the application server tool to remove name from its JNDI if this tool is available.
- 22108: ERROR_SERIALIZE_OR_DESERIALIZE_COMMAND
-
Cause: Failure to serialize or deserialize command.
-
Action: If the command is a user defined command, make sure it is serializable. If it is a TopLink command, file a bug report including the stack trace.
- 22109: ERROR_RECEIVING_JMS_MESSAGE
-
Cause: Failure to receive JMS message from JMS provider.
-
Action: Make sure that TopLink sessions are the only publishers to the JMS Topic and that the TopLink sessions use the same project.
- 22110: ERROR_DISCOVERING_IP_ADDRESS
-
Cause: Failure to discover local host IP address.
-
Action: Replace the $HOST
string of the URL with the known host name or IP address.
- 22111: ERROR_GETTING_SERVERPLATFORM
-
Cause: Failure to get server platform. The server platform must be set on Session
or RemoteCommandManager
.
-
Action: Set the correct ServerPlatform
on the RemoteCommandManager
. This exception is raised when the user does not use a TopLink Session and implements the CommandProcessor
.
Transaction Exceptions (23001 - 23015)
TransactionException
is a run-time exception that is raised when an error is encountered during a transaction. When this occurs, the message contains a reference to the error code and error message.
Format
EXCEPTION [TOPLINK – error code]: Exception nameEXCEPTION DESCRIPTION: Message
Example 13-16 Transaction Exception
EXCEPTION [TOPLINK – 23001]: oracle.toplink.exceptions.TransactionExceptionEXCEPTION DESCRIPTION: Error looking up external Transaction resource under JNDI name.
- 23001: ERROR_DOING_JNDI_LOOKUP
-
Cause: Error looking up external transaction resource under JNDI name name
.
-
Action: Examine the internal exception and take the appropriate action.
- 23002: ERROR_GETTING_TRANSACTION_STATUS
-
Cause: Error obtaining the status of the current externally-managed transaction.
-
Action: Examine the internal exception and take the appropriate action.
- 23003: ERROR_GETTING_TRANSACTION
-
Cause: Error obtaining the current externally managed transaction.
-
Action: Examine the internal exception and take the appropriate action.
- 23004: ERROR_BINDING_TO_TRANSACTION
-
Cause: Error obtaining the transaction manager.
-
Action: Examine the internal exception and take the appropriate action.
- 23005: ERROR_BEGINNING_TRANSACTION
-
Cause: Error binding to the externally managed transaction.
-
Action: Examine the internal exception and take the appropriate action.
- 23006: ERROR_COMMITTING_TRANSACTION
-
Cause: Error beginning a new externally managed transaction.
-
Action: Examine the internal exception and take the appropriate action.
- 23007: ERROR_ROLLING_BACK_TRANSACTION
-
Cause: Error committing the externally managed transaction.
-
Action: Examine the internal exception and take the appropriate action.
- 23008: ERROR_MARKING_TRANSACTION_FOR_ROLLBACK
-
Cause: Error rolling back the externally managed transaction.
-
Action: Examine the internal exception and take the appropriate action.
- 23009: ERROR_NO_TRANSACTION_ACTIVE
-
Cause: Error marking the externally managed transaction for rollback.
-
Action: Examine the internal exception and take the appropriate action.
- 23010: ERROR_INACTIVE_UOW
-
Cause: No externally managed transaction is currently active for this thread.
-
Action: Ensure that the transaction is still active.
- 23011: ERROR_OBTAINING_TRANSACTION_MANAGER
-
Cause: A UnitOfWork
was rendered inactive before the associated externally managed transaction was complete.
-
Action: Examine the internal exception and take the appropriate action.
- 23012: ENTITY_TRANSACTION_WITH_JTA_NOT_ALLOWED
-
Cause: Attempt to use an EntityTransaction
while using JTA. This is an invalid operation.
-
Action: Examine the internal exception and take the appropriate action.
- 23013: CANNOT_ENLIST_MULTIPLE_DATASOURCES
-
Cause: Attempt to enlist multiple data sources in the transaction.
-
Action: Enlist only one data source per transaction.
- 23014: EXCEPTION_IN_PROXY_EXECUTION
-
Cause: Exception occurred in Proxy
execution.
-
Action: Examine the internal exception and take the appropriate action.
- 23015: ERROR_NO_ENTITY_TRANSACTION_ACTIVE
-
Cause: No entity transaction is currently active for this thread.
-
Action: Ensure that the transaction is active.
For more information, see Part XIX, "Transactions".
XML Conversion Exceptions (25501)
XMLConversionException
is a run-time exception that is raised when a conversion between TopLink instances and XML fails. This exception is used in cache coordination that uses XML change sets.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-17 XML Conversion Exception
EXCEPTION [TOPLINK – 25001]: oracle.toplink.exceptions.XMLConversionException
EXCEPTION DESCRIPTION: Cannot create URL for file [\\FILE_SERVER\command.xml].
- 25501: ERROR_CREATE_URL
-
Cause: Failure to create a URL for the specified file.
-
Action: Ensure that all specified XPath strings on mappings are valid and correct.
Migration Utility Exceptions (26001 - 26020)
MigrationUtilityException
is a run-time exception that is raised when an error is encountered during the use of the TopLink migration utility.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-18 Migration Utility Exception
EXCEPTION [TOPLINK – 26002]: oracle.toplink.exceptions.MigrationUtilityException
EXCEPTION DESCRIPTION: The program security manager prevents the migration utility from creating a JAR class loader for the JAR file.
- 26001: WLS_MULTIPLE_JARS_WITH_INPUT_ORION_NOT_SUPPORTED
-
Cause: WLS->OC4J TopLink migration exception: There are multiple migratable JARs in the input EAR file, and the orion-ejb-jar.xml
is also provided in the input. The migration utility only supports a single migratable JAR file in an EAR file if the orion-ejb-jar.xml
file is also in the input.
-
Action: Remove the orion-ejb-jar.xml
file from the input directory, or keep only one migratable JAR file in the input EAR file.
- 26002: FAILED_TO_CREATE_JAR_CLASSLOADER
-
Cause: The program security manager prevents the migration utility from creating a JAR class loader for the JAR file.
-
Action: Configure the program security manager to grant permission on the program to create the JAR class loader.
- 26003: FAILED_TO_CREATE_DIRECTORY
-
Cause: The program security manager prevents the migration utility from creating a directory.
-
Action: Configure the program security manager to grant permission on the program to create a local directory.
- 26004: FILE_NOT_ACCESSIBLE
-
Cause: The file is not accessible by the migration utility.
-
Action: Check to ensure that the file is on the specified path and is readable.
- 26005: FILE_NOT_DELETABLE
-
Cause: The program security manager prevents the migration utility from deleting a directory.
-
Action: Configure the program security manager to grant permission to the program to delete files.
- 26006: FAILED_TO_READ_INPUTSTREAM
-
Cause: A java.io.IOException
occurred when reading data from an input stream.
-
Action: Check to ensure that the file is not locked and is accessible.
- 26007: FAILED_TO_CLOSE_STREAM
-
Cause: A java.io.IOException
occurred when closing data from an input or output stream.
-
Action: Check to ensure that the file is not locked and is accessible.
- 26008: FAILED_TO_CLOSE_ZIPFILE
-
Cause: A java.io.IOException
occurred when closing data from a zip file.
-
Action: Check to ensure that the zip file is not locked and is accessible.
- 26009: JAR_FILE_NOT_ACCESSIBLE
-
Cause: The JAR file was not found or was not accessible on the specified path.
-
Action: Check to ensure that the JAR file is not locked and is accessible.
- 26010: QUERY_NOT_WELL_DEFINED
-
Cause: Query method with parameters of the entity defined in the ejb-jar.xml
file is not well defined as it does not start with find
or ejbSelect
.
-
Action: Check the ejb-jar.xml
file to ensure that the finder name starts with either find
or ejbSelect
according to the EJB spec.
- 26011: FAIL_TO_LOAD_CLASS_FOR_QUERY
-
Cause: The class defined as a parameter type of the query of the entity in ejb-jar.xml
could not be loaded.
-
Action: Ensure that the bean class is included on the classpath.
- 26012: FINDER_NOT_DEFINED_IN_ENTITY_HOME
-
Cause: The finder
method with parameters defined in the ejb-jar.xml
file is not defined at the entity's local and/or remote home interface.
-
Action: Check the ejb-jar.xml
file and the bean home to ensure that the finder
method parameter types are properly defined.
- 26013: EJB_SELECT_NOT_DEFINED_IN_ENTITY_BEAN_CLASS
-
Cause: The ejbSelect
method with parameters defined in the ejb-jar.xml
file is not defined at the entity's bean class.
-
Action: Check the ejb-jar.xml
file and the bean class to ensure that the ejbSelect
method parameter types are properly defined.
- 26014: ENTITY_IN_WLS_CMP_JAR_NOT_DEFINED_IN_WLS_EJB_JAR
-
Cause: The entity specified in the weblogic-cmp-jar.xml
file is not defined in the weblogic-ejb-jar.xml
file.
-
Action: Ensure that the entity is consistently defined in the deployment descriptor files.
- 26015: NO_ENTITY_DEFINED_IN_WLS_CMP_JAR
-
Cause: No entity element is defined in the weblogic-cmp-rdbms-jar.xml
file.
-
Action: Ensure that all entities defined in the ejb-jar.xml
file are mapped in the WebLogic CMP descriptor file.
- 26016: WLS_CMP_DESCRIPTOR_FILE_NOT_FOUND
-
Cause: The WebLogic CMP descriptor file specified in the weblogic-ejb-jar.xml
file was not found in the directory.
-
Action: Ensure that the WebLogic CMP descriptor file, specified in the weblogic-ejb-jar.xml
file, is included in the input directory.
- 26017: CMP_DESCRIPTOR_NOT_FOUND_IN_JAR
-
Cause: The CMP descriptor file is not found in the JAR file to be migrated.
-
Action: Ensure that the WebLogic CMP descriptor file, specified in the weblogic-ejb-jar.xml
file, is included in the input archive JAR file.
- 26018: NOT_ALL_ENTITIES_IN_EJB_JAR_MAPPED_IN_ORION
-
Cause: Some of the entity beans EntityBeanClassName
-s defined in the ejb-jar.xml
file in the jar jarName
are not explicitly mapped in the orion-ejb-jar.xml
file.
-
Action: Provide the completely mapped orion-ejb-jar.xml
file to the migration tool. You can obtain the completely mapped orion-ejb-jar.xml
file from the /application-deployment
directory after deploying the application.
- 26019: ENTITY_NOT_MAPPED_IN_ORION
-
Cause: The entity EntityName
in the orion-ejb-jar.xml
file is not mapped, because no table is specified.
-
Action: Provide the completely mapped orion-ejb-jar.xml
file to the migration tool. You can obtain the completely mapped orion-ejb-jar.xml
file from the /application-deployment
directory after deploying the application.
- 26020: ENTITY_IN_ORION_NOT_IN_EJB_JAR
-
Cause: The entity EntityName specified in the orion-ejb-jar.xml
file is not defined in the ejb-jar.xml
file.
-
Action: Define this entity in the ejb-jar.xml
file.
For more information, see Chapter 7, "Integrating TopLink With an Application Server ".
EJB JAR XML Exceptions (72000 – 72023)
EJBJARXMLException
is a run-time exception that is raised at deployment time when the ejb-jar.xml
file is read and the required concrete EJB classes code is generated.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-19 EJB JAR XML Exception
EXCEPTION [TOPLINK – 72000]: oracle.toplink.exceptions.EJBJarXMLException
EXCEPTION DESCRIPTION: Error reading ejb-jar.xml file.
- 72000: READ_EXCEPTION
-
Cause: Failure to read an ejb-jar.xml
file due to a java.io.IOException
or javax.xml.parsers.ParserConfigurationException
.
-
Action: See the generated exception for the root cause.
- 72001: INVALID_DOC_TYPE
-
Cause: Failure to parse the specified file because it did not use the expected doctype: -//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN
-
Action: Verify that your ejb-jar.xml
file uses the correct documentation type.
- 72002: CONCRETE_INSTANCE_VARIALBE_EXISTS
-
Cause: There was a concrete instance variable variableName
already defined on the class ClassName
.
-
Action: Either remove this instance variable from the class, refresh in the TopLink Workbench, and update from the ejb-jar.xml
file again, or remove the field from the ejb-jar.xml
file and update again.
- 72003: EJB_2_0_ATTRIBUTE_NOT_EXIST
-
Cause: A mapping for a field fieldName
could not be created on the descriptor DescriptorName
.
-
Action: Check to ensure that there are abstract get
and set
methods accessible for this field.
- 72004: NEITHER_HOME_NOR_REMOTE_INTERFACE_FOUND
-
Cause: Neither local home nor remote home interface for the class ClassName was found on the classpath. The finders for this class were not updated
-
Action: Update the finders for this class; ensure that either local home or remote home interface for the class is on the classpath.
- 72005: FINDER_NOT_EXIST_ON_REMOTE_HOME_AND_LOCAL_HOME
-
Cause: The finder method methodName was not defined on a home interface for the entity EntityName
. The finder was not updated
-
Action: Define the finder method.
- 72006: NO_PERSISTENCE_TYPE_SPECIFIED
-
Cause: TopLink Workbench could not determine a project persistence type from the XML file.
-
Action: Specify the persistence type for your TopLink project.
- 72007: SELECT_NOT_DEFINED_IN_BEANCLASS
-
Cause: Failure to find a corresponding ejbSelect
method in the bean class ClassName
. No information was updated for this query.
-
Action: Define ejbSelect
method in your bean class.
- 72008: EJB_DESCRIPTOR_MUST_HAVE_EJB_NAME
-
Cause: The EJB descriptor DescriptorName
does not have an EJB name specified.
-
Action: In your EJB descriptor, specify an EJB name.
- 72009: EJB_DESCRIPTOR_MUST_HAVE_PRIMARYKEY_CLASS
-
Cause: The EJB descriptor DescriptorName
does not have a primary key class specified.
-
Action: In your EJB descriptor, specify a primary key class.
- 72010: EJB_NAME_MUST_BE_UNIQUE
-
Cause: The EJB name EJBName
was used by more than one descriptor. EJB names must be unique
-
Action: Ensure that the EJB name is specified in one and only one descriptor.
- 72011: EMPTY_TEXT_ATTRIBUTE
-
Cause: An element elementName
has an empty text attribute attributeName
.
-
Action: Use a non-empty text attribute for the subelement.
- 72012: MULTIPLE_ENTITIES_FOUND_FOR_EJB_NAME
-
Cause: There are multiple entities with the same EJB bean name BeanName
in the XML file.
-
Action: Use a unique EJB bean name for each entity.
- 72013: INVALID_CMP_VERSION
-
Cause: The entity EntityName does not have a valid cmp-version
definition. The cmp-version
must be 1.x
or 2.x
.
-
Action: Use a cmp-version
value of 1.x
or 2.x
only.
- 72014: INVALID_EJB_NAME_FOR_RELATIONSHIP_ROLE
-
Cause: The EJB bean name BeanName in the ejb-relationship-role
element is not found in the XML file.
-
Action: Use the EJB bean name of an existing entity for the ejb-relationship-role
.
- 72015: INVALID_MULTIPLICITY
-
Cause: There was an invalid multiplicity value defined for a relationship involving the mapping Mapping
Name in a descriptor DescriptorName
. The multiplicity must be either One
or Many
.
-
Action: Use a multiplicity value of One
or Many
only.
- 72016: INVALID_PERSISTENCE_TYPE
-
Cause: The entity EntityName does not have a valid persistence type. The type must be either Bean
or Container
.
-
Action: Use a persistence-type
value of Bean
or Container
only.
- 72017: INVALID_QUERY_METHOD_NAME
-
Cause: The query method methodName
does not start with find
or ejbSelect
. No information was updated for this query.
-
Action: Verify that the query method name starts with either find
or ejbSelect
.
- 72018: NOT_SINGLE_PERSISTENCE_TYPE
-
Cause: Attempt to use a nonuniform persistence type for the TopLink Workbench project: TopLink Workbench requires that all entities in the XML file for this project have the same persistence-type
and/or cmp-version
. The project will be set according to the persistence-type
and/or cmp-version
of the first entity in the file.
-
Action: Provide all entities in the XML file for this project with the same persistence-type
and/or cmp-version
.
- 72019: PROJECT_MUST_HAVE_AT_LEAST_ONE_EJB_DESCRIPTOR
-
Cause: The project ProjectName
does not have an EJB descriptor: it must have at least one EJB descriptor.
-
Action: Provide an EJB descriptor for the project.
- 72020: ATTRIBUTE_NOT_EXIST
-
Cause: The attribute attributeName
is not found.
-
Action: Define this attribute.
- 72021: EJB_CLASS_NOT_FOUND
-
Cause: The class ClassName
could not be found on the classpath. A descriptor could not be created for it.
-
Action: Ensure that the class ClassName is on the classpath.
- 72022: REQUIRED_ATTRIBUTE_NOT_EXIST
-
Cause: There is an element that does not have a required attribute.
-
Action: Add the subelement to the parent element.
- 72023: NO_CMR_FIELD_FOR_BEAN_ABSTRACT_SETTER
-
Cause: Entity bean BeanName has an abstract setter method with an EntityBean
attribute type for attribute attributeName
, but does not have a corresponding CMR field.
-
Action: Verify that all CMP entities have the same cmp-version
value.
Entity Manager Setup Exceptions (28001 – 28007)
EntityManagerSetupException
is raised when an error is encountered during the process of setting up an entity manager.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-20 Entity Manager Setup Exception
EXCEPTION [TOPLINK – 28001]: oracle.toplink.exceptions.EntityManagerSetupException
EXCEPTION DESCRIPTION: Error while trying to create session.
- 28001: SESSIONS_XML_VALIDATION_EXCEPTION
-
Cause: A ValidationException
was thrown while trying to create a session sessionName
.
-
Action: Ensure that your fileName
file is on the classpath. If it is on the classpath, ensure that this file contains the session sessionName.
- 28002: WRONG_SESSION_TYPE_EXCEPTION
-
Cause: Failure to load a ServerSession
sessionName from sourceName
.
-
Action: Ensure that the server session's type is correct.
- 28003: MISSING_SERVER_PLATFORM_EXCEPTION
-
Cause: Server platform specification was not found: TopLink has loaded a session sessionName from sourceName, but this session either does not have a server platform specified, or specifies a server platform that does not use an external transaction controller.
-
Action: If you plan to use JTA, specify an appropriate server platform.
- 28004: ERROR_IN_SETUP_OF_EM
-
Cause: Error while setting up an oracle.toplink.sessions.entitymanager.EntityManagerFactory
.
-
Action: Ensure the correct setup of the EntityManagerFactory
: initializeFromMain
method of the EntityContainer
should return true
.
- 28005: EXCEPTION_IN_SETUP_OF_EM
-
Cause: Error during the setup of oracle.toplink.sessions.entitymanager.EntityManagerFactory
.
-
Action: See the generated exception for the root cause.
- 28006: CLASS_NOT_FOUND_FOR_PROPERTY
-
Cause: Failure to find the class ClassName
specified in the property propertyName
.
-
Action: Ensure that the class exists and is on the classpath.
- 28007: FAILED_TO_INSTANTIATE_SERVER_PLATFORM
-
Cause: Failure to instantiate a server platform of type ServerPlatformType
specified in the property propertyName
.
-
Action: See the generated exception for the root cause.
XML Marshal Exceptions (25001 – 25020)
XMLMarshalException
is raised when an error is encountered during the XML marshalling process.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-21 XML Marshal Exception
EXCEPTION [TOPLINK – 25001]: oracle.toplink.exceptions.XMLMarshalException
EXCEPTION DESCRIPTION: Error while trying to create session.
- 25001: INVALID_XPATH_STRING
-
Cause: Attempt to use an invalid XPath string
.
-
Action: Ensure that the XPath is specified correctly.
- 25002: INVALID_XPATH_INDEX_STRING
-
Cause: Attempt to parse an integer index from the XPath string xpathString
.
-
Action: Ensure that the XPath is specified correctly.
- 25003: MARSHAL_EXCEPTION
-
Cause: Error occurred during the object marshalling.
-
Action: See the generated exception for the root cause.
- 25004: UNMARSHAL_EXCEPTION
-
Cause: Error while setting up an oracle.toplink.sessions.entitymanager.EntityManagerFactory
.
-
Action: Ensure the correct setup of the EntityManagerFactory
: initializeFromMain
method of the EntityContainer
should return true
.
- 25005: VALIDATE_EXCEPTION
-
Cause: Validation error.
-
Action: See the generated exception for the root cause.
- 25006: DEFAULT_ROOT_ELEMENT_NOT_SPECIFIED
-
Cause: A default root element is not specified for the XMLDescriptor
mapped to target
.
-
Action: Specify the default root element for the descriptor.
- 25007: DESCRIPTOR_NOT_FOUND_IN_PROJECT
-
Cause: A descriptor for class ClassName
was not found in the project.
-
Action: Ensure that the descriptor for this class exists.
- 25008: NO_DESCRIPTOR_WITH_MATCHING_ROOT_ELEMENT
-
Cause: A descriptor with the default root element element
was not found in the project.
-
Action: Ensure that the descriptor for this class exists and that its default root element is specified.
- 25010: SCHEMA_REFERENCE_NOT_SET
-
Cause: A schema reference is not specified for the XMLDescriptor mapped to target.
-
Action: Specify the schema reference for the descriptor.
- 25011: NULL_ARGUMENT
-
Cause: A null
argument was encountered.
-
Action: Ensure that this argument is not null
.
- 25012: ERROR_RESOLVING_XML_SCHEMA
-
Cause: Failure to resolve the XML schema.
-
Action: See the generated exception for the root cause.
- 25013: ERROR_SETTING_SCHEMAS
-
Cause: Failure to set schemas.
-
Action: See the generated exception for the root cause.
- 25014: ERROR_INSTANTIATING_SCHEMA_PLATFORM
-
Cause: Error during the schema platform instantiation.
-
Action: See the generated exception for the root cause.
- 25015: NAMESPACE_RESOLVER_NOT_SPECIFIED
-
Cause: Failure to resolve the namespace URI for target.
-
Action: Specify a namespace resolver on the descriptor
- 25016: NAMESPACE_NOT_FOUND
-
Cause: A namespace for the prefix prefix
was not found in the namespace resolver.
-
Action: Ensure that the namespace for this prefix exists in the namespace resolver.
- 25017: ENUM_CLASS_NOT_SPECIFIED
-
Cause: Enumeration class is not specified.
-
Action: Set either enumClass
or enumClassName
on the JAXBTypesafeEnumConverter
.
- 25018: FROMSTRING_METHOD_ERROR
-
Cause: Error during the invocation of the fromString
method on the enumeration class ClassName
: the method does not exist or could not be invoked.
-
Action: See the generated exception for the root cause.
- 25019: INVALID_ENUM_CLASS_SPECIFIED
-
Cause: The specified enumeration class ClassName was not found.
-
Action: Ensure the correct specification of the enumeration class.
- 25020: ILLEGAL_STATE_XML_UNMARSHALLER_HANDLER
-
Cause: Attempt to call the method getResult
before the call to the endDocument
event.
-
Action: Call the getResult method after the endDocument
event has been called.
For more information, see "Understanding XML Mappings".
XML Platform Exceptions (27001 – 27006, 27101 – 27103, 27201 – 27202)
XMLPlatformException
is raised when an error related to XML platform is encountered.
Format
EXCEPTION [TOPLINK – error code]: Exception name
EXCEPTION DESCRIPTION: Message
Example 13-22 EJB JAR XML Exception
EXCEPTION [TOPLINK – 27001]: oracle.toplink.platform.xml.XMLPlatformException
EXCEPTION DESCRIPTION: The XML platform class ClassName was not found.
- 27001: XML_PLATFORM_CLASS_NOT_FOUND
-
Cause: The XML platform class ClassName
was not found.
-
Action: Ensure that this class is on the classpath.
- 27002: XML_PLATFORM_COULD_NOT_INSTANTIATE
-
Cause: Failure to instantiate the XML platform ClassName.
-
Action: See the generated exception for the root cause.
- 27003: XML_PLATFORM_COULD_NOT_CREATE_DOCUMENT
-
Cause: The XML platform failed to create a new XML document.
-
Action: See the generated exception for the root cause.
- 27004: XML_PLATFORM_INVALID_XPATH
-
Cause: The XPath is invalid.
-
Action: See the generated exception for the root cause.
- 27005: XML_PLATFORM_VALIDATION_EXCEPTION
-
Cause: Error during the document validation.
-
Action: See the generated exception for the root cause.
- 27006: XML_PLATFORM_PARSER_ERROR_RESOLVING_XML_SCHEMA
-
Cause: Failure to resolve an XML Schema schema
: XML platform parser error occurred.
-
Action: See the generated exception for the root cause.
- 27101: XML_PLATFORM_PARSE_EXCEPTION
-
Cause: Failure to parse the document.
-
Action: See the generated exception for the root cause.
- 27102: XML_PLATFORM_PARSER_FILE_NOT_FOUND_EXCEPTION
-
Cause: Failure to find the XML platform parser file.
-
Action: Ensure that the parser file exists and is accessible (on the classpath).
- 27103 XML_PLATFORM_PARSER_SAX_PARSE_EXCEPTION
-
Cause: SAX parser error at line lineNumber
, URI uri
.
-
Action: See the generated exception for the root cause.
- 27201: XML_PLATFORM_TRANSFORM_EXCEPTION
-
Cause: Error during the transforming of the document.
-
Action: See the generated exception for the root cause.
- 27202: XML_PLATFORM_INVALID_TYPE
-
Cause: Unknown type type
encountered.
-
Action: See the generated exception for the root cause.