Class OptimisticLockException
java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
jakarta.persistence.PersistenceException
jakarta.persistence.OptimisticLockException
- All Implemented Interfaces:
Serializable
Thrown by the persistence provider when an optimistic locking conflict
occurs. This exception may be thrown by an API call, during flush, or
when the transaction commits.
An OptimisticLockException must be thrown by the persistence
provider when:
- The version of an entity in the persistence context does not match the version held in the database when the entity is written or deleted.
- A detached entity passed to
EntityManager.merge(T)holds a stale revision of the state of the entity. - An optimistic version check performed while obtaining a pessimistic lock on a versioned entity fails.
- An
EntityAgent.update(Object)orEntityAgent.delete(Object)operation is called for an entity with no matching row in the database, or an optimistic version check performed by the operation fails. - An
EntityAgent.upsert(Object)operation fails an optimistic version check.
If an OptimisticLockException is thrown by an
EntityManager with a persistence context joined to an active
transaction, the transaction is automatically marked for rollback when
the exception is thrown.
- Since:
- 1.0
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs a newOptimisticLockExceptionexception withnullas its detail message.OptimisticLockException(Object entity) Constructs a newOptimisticLockExceptionexception with the specified entity.OptimisticLockException(String message) Constructs a newOptimisticLockExceptionexception with the specified detail message.OptimisticLockException(String message, Throwable cause) Constructs a newOptimisticLockExceptionexception with the specified detail message and cause.OptimisticLockException(String message, Throwable cause, Object entity) Constructs a newOptimisticLockExceptionexception with the specified detail message, cause, and entity.OptimisticLockException(Throwable cause) Constructs a newOptimisticLockExceptionexception with the specified cause. -
Method Summary
Methods inherited from class Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
Constructor Details
-
OptimisticLockException
public OptimisticLockException()Constructs a newOptimisticLockExceptionexception withnullas its detail message. -
OptimisticLockException
Constructs a newOptimisticLockExceptionexception with the specified detail message.- Parameters:
message- the detail message.
-
OptimisticLockException
-
OptimisticLockException
Constructs a newOptimisticLockExceptionexception with the specified cause.- Parameters:
cause- the cause.
-
OptimisticLockException
Constructs a newOptimisticLockExceptionexception with the specified entity.- Parameters:
entity- the entity.
-
OptimisticLockException
-
-
Method Details
-
getEntity
-