Skip Headers

# Validation Exceptions (7001 – 7200)

Previous

Next

`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

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:

  1. 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.

  2. 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.