Class DatabaseException

  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    EISException

    public class DatabaseException
    extends EclipseLinkException

    Purpose: Wrapper for any database exception that occurred through EclipseLink.

    See Also:
    Serialized Form
    • Field Detail

      • exception

        protected java.sql.SQLException exception
      • call

        protected transient Call call
      • queryArguments

        protected transient org.eclipse.persistence.internal.sessions.AbstractRecord queryArguments
      • accessor

        protected transient org.eclipse.persistence.internal.databaseaccess.Accessor accessor
      • isCommunicationFailure

        protected boolean isCommunicationFailure
      • CONFIGURATION_ERROR_CLASS_NOT_FOUND

        public static final int CONFIGURATION_ERROR_CLASS_NOT_FOUND
        See Also:
        Constant Field Values
      • DATABASE_ACCESSOR_NOT_CONNECTED

        public static final int DATABASE_ACCESSOR_NOT_CONNECTED
        See Also:
        Constant Field Values
      • ERROR_READING_BLOB_DATA

        public static final int ERROR_READING_BLOB_DATA
        See Also:
        Constant Field Values
      • COULD_NOT_CONVERT_OBJECT_TYPE

        public static final int COULD_NOT_CONVERT_OBJECT_TYPE
        See Also:
        Constant Field Values
      • LOGOUT_WHILE_TRANSACTION_IN_PROGRESS

        public static final int LOGOUT_WHILE_TRANSACTION_IN_PROGRESS
        See Also:
        Constant Field Values
      • SEQUENCE_TABLE_INFORMATION_NOT_COMPLETE

        public static final int SEQUENCE_TABLE_INFORMATION_NOT_COMPLETE
        See Also:
        Constant Field Values
      • ERROR_PREALLOCATING_SEQUENCE_NUMBERS

        public static final int ERROR_PREALLOCATING_SEQUENCE_NUMBERS
        See Also:
        Constant Field Values
      • CANNOT_REGISTER_SYNCHRONIZATIONLISTENER_FOR_UNITOFWORK

        public static final int CANNOT_REGISTER_SYNCHRONIZATIONLISTENER_FOR_UNITOFWORK
        See Also:
        Constant Field Values
      • SYNCHRONIZED_UNITOFWORK_DOES_NOT_SUPPORT_COMMITANDRESUME

        public static final int SYNCHRONIZED_UNITOFWORK_DOES_NOT_SUPPORT_COMMITANDRESUME
        See Also:
        Constant Field Values
      • CONFIGURATION_ERROR_NEW_INSTANCE_INSTANTIATION_EXCEPTION

        public static final int CONFIGURATION_ERROR_NEW_INSTANCE_INSTANTIATION_EXCEPTION
        See Also:
        Constant Field Values
      • CONFIGURATION_ERROR_NEW_INSTANCE_ILLEGAL_ACCESS_EXCEPTION

        public static final int CONFIGURATION_ERROR_NEW_INSTANCE_ILLEGAL_ACCESS_EXCEPTION
        See Also:
        Constant Field Values
      • TRANSACTION_MANAGER_NOT_SET_FOR_JTS_DRIVER

        public static final int TRANSACTION_MANAGER_NOT_SET_FOR_JTS_DRIVER
        See Also:
        Constant Field Values
      • ERROR_RETRIEVE_DB_METADATA_THROUGH_JDBC_CONNECTION

        public static final int ERROR_RETRIEVE_DB_METADATA_THROUGH_JDBC_CONNECTION
        See Also:
        Constant Field Values
      • COULD_NOT_FIND_MATCHED_DATABASE_FIELD_FOR_SPECIFIED_OPTOMISTICLOCKING_FIELDS

        public static final int COULD_NOT_FIND_MATCHED_DATABASE_FIELD_FOR_SPECIFIED_OPTOMISTICLOCKING_FIELDS
        See Also:
        Constant Field Values
      • UNABLE_TO_ACQUIRE_CONNECTION_FROM_DRIVER

        public static final int UNABLE_TO_ACQUIRE_CONNECTION_FROM_DRIVER
        See Also:
        Constant Field Values
      • DATABASE_ACCESSOR_CONNECTION_IS_NULL

        public static final int DATABASE_ACCESSOR_CONNECTION_IS_NULL
        See Also:
        Constant Field Values
    • Constructor Detail

      • DatabaseException

        protected DatabaseException()
        INTERNAL: EclipseLink exceptions should only be thrown by the EclipseLink code.
      • DatabaseException

        protected DatabaseException​(java.lang.String message)
        INTERNAL: EclipseLink exceptions should only be thrown by the EclipseLink code.
      • DatabaseException

        protected DatabaseException​(java.sql.SQLException exception)
        INTERNAL: EclipseLink exceptions should only be thrown by the EclipseLink code.
    • Method Detail

      • cannotRegisterSynchronizatonListenerForUnitOfWork

        public static DatabaseException cannotRegisterSynchronizatonListenerForUnitOfWork​(java.lang.Exception e)
      • configurationErrorClassNotFound

        public static DatabaseException configurationErrorClassNotFound​(java.lang.String className)
      • configurationErrorNewInstanceIllegalAccessException

        public static DatabaseException configurationErrorNewInstanceIllegalAccessException​(java.lang.IllegalAccessException exception,
                                                                                            java.lang.Class javaClass)
      • configurationErrorNewInstanceInstantiationException

        public static DatabaseException configurationErrorNewInstanceInstantiationException​(java.lang.InstantiationException exception,
                                                                                            java.lang.Class javaClass)
      • couldNotConvertObjectType

        public static DatabaseException couldNotConvertObjectType​(int type)
      • databaseAccessorNotConnected

        public static DatabaseException databaseAccessorNotConnected()
      • databaseAccessorNotConnected

        public static DatabaseException databaseAccessorNotConnected​(org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor databaseAccessor)
      • databaseAccessorConnectionIsNull

        public static DatabaseException databaseAccessorConnectionIsNull​(org.eclipse.persistence.internal.databaseaccess.DatabaseAccessor databaseAccessor,
                                                                         org.eclipse.persistence.internal.sessions.AbstractSession session)
      • errorPreallocatingSequenceNumbers

        public static DatabaseException errorPreallocatingSequenceNumbers()
      • specifiedLockingFieldsNotFoundInDatabase

        public static DatabaseException specifiedLockingFieldsNotFoundInDatabase​(java.lang.String lockingFieldName)
      • getAccessor

        public org.eclipse.persistence.internal.databaseaccess.Accessor getAccessor()
        PUBLIC: Return the accessor.
      • getDatabaseErrorCode

        public int getDatabaseErrorCode()
        PUBLIC: This is the database error number. Since it is possible to have no internal exception the errorCode will be zero in this case.
      • getQuery

        public DatabaseQuery getQuery()
        PUBLIC: This method returns the databaseQuery. DatabaseQuery is a visible class to the EclipseLink user. Users create an appropriate query by creating an instance of a concrete subclasses of DatabaseQuery.
      • getCall

        public Call getCall()
        PUBLIC: Return the call that caused the exception.
      • setCall

        public void setCall​(Call call)
        INTERNAL: Set the call that caused the exception.
      • getQueryArgumentsRecord

        public Record getQueryArgumentsRecord()
        PUBLIC: Return the query arguments used in the original query when exception is thrown
      • logoutWhileTransactionInProgress

        public static DatabaseException logoutWhileTransactionInProgress()
      • sequenceTableInformationNotComplete

        public static DatabaseException sequenceTableInformationNotComplete()
      • setAccessor

        public void setAccessor​(org.eclipse.persistence.internal.databaseaccess.Accessor accessor)
        INTERNAL: Set the Accessor.
      • setQuery

        public void setQuery​(DatabaseQuery query)
        PUBLIC: This method set the databaseQuery. DatabaseQuery is a visible class to the EclipseLink user. Users create an appropriate query by creating an instance of a concrete subclasses of DatabaseQuery.
      • setQueryArguments

        public void setQueryArguments​(org.eclipse.persistence.internal.sessions.AbstractRecord queryArguments)
        PUBLIC: Set the query arguments used in the original query when exception is thrown
      • sqlException

        public static DatabaseException sqlException​(java.sql.SQLException exception)
      • sqlException

        public static DatabaseException sqlException​(java.sql.SQLException exception,
                                                     boolean commError)
      • sqlException

        public static DatabaseException sqlException​(java.sql.SQLException exception,
                                                     org.eclipse.persistence.internal.sessions.AbstractSession session,
                                                     boolean commError)
      • sqlException

        public static DatabaseException sqlException​(java.sql.SQLException exception,
                                                     org.eclipse.persistence.internal.databaseaccess.Accessor accessor,
                                                     org.eclipse.persistence.internal.sessions.AbstractSession session,
                                                     boolean isCommunicationFailure)
      • sqlException

        public static DatabaseException sqlException​(java.sql.SQLException exception,
                                                     Call call,
                                                     org.eclipse.persistence.internal.databaseaccess.Accessor accessor,
                                                     org.eclipse.persistence.internal.sessions.AbstractSession session,
                                                     boolean isCommunicationFailure)
      • synchronizedUnitOfWorkDoesNotSupportCommitAndResume

        public static DatabaseException synchronizedUnitOfWorkDoesNotSupportCommitAndResume()
      • transactionManagerNotSetForJTSDriver

        public static DatabaseException transactionManagerNotSetForJTSDriver()
      • errorRetrieveDbMetadataThroughJDBCConnection

        public static DatabaseException errorRetrieveDbMetadataThroughJDBCConnection()
      • unableToAcquireConnectionFromDriverException

        public static DatabaseException unableToAcquireConnectionFromDriverException​(java.lang.String driver,
                                                                                     java.lang.String user,
                                                                                     java.lang.String url)
        The connection returned from this driver was null, the driver may be missing(using the default) or the wrong one for the database.
        Parameters:
        driver -
        Returns:
      • unableToAcquireConnectionFromDriverException

        public static DatabaseException unableToAcquireConnectionFromDriverException​(java.sql.SQLException exception,
                                                                                     java.lang.String driver,
                                                                                     java.lang.String user,
                                                                                     java.lang.String url)
        The connection returned from this driver was null, the driver may be missing(using the default) or the wrong one for the database.
        Parameters:
        exception -
        driver -
        Returns:
      • isCommunicationFailure

        public boolean isCommunicationFailure()
      • setCommunicationFailure

        public void setCommunicationFailure​(boolean isCommunicationFailure)