JBoss EAP 6/7 の ejb で javax.ejb.ConcurrentAccessTimeoutException を取得する
Issue
- 以下のような例外を取得します。
javax.ejb.ConcurrentAccessTimeoutException: JBAS014373: EJB 3.1 PFD2 4.8.5.5.1 concurrent access timeout on org.jboss.invocation.InterceptorContext$Invocation@7d5446 - could not obtain lock within 5000MILLISECONDS
org.jboss.as.ejb3.concurrency.ContainerManagedConcurrencyInterceptor.processInvocation(ContainerManagedConcurrencyInterceptor.java:100) [jboss-as-ejb3-7.3.0.Final-redhat-14.jar:7.3.0.Final-redhat-14]
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:288) [jboss-invocation-1.1.2.Final-redhat-1.jar:1.1.2.Final-redhat-1]
at
.
.
.
- クラスに @Lock (READ) アノテーションが付けられていても、上記のエラーが発生します。
@Singleton
@javax.ejb.Lock(javax.ejb.LockType.READ)
public class MySingletonBean {
public void aReadMethod() {...}
@javax.ejb.Lock(javax.ejb.LockType.WRITE)
public void aWriteMethod() {...}
}
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 6.x
- 7.x
- Java Enterprise
- EJB 3.1 以降
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.