【发布时间】:2016-07-21 14:38:13
【问题描述】:
将 Java 7 与 Jboss7 一起使用,以下代码可以正常工作。
@Singleton
public class OperacaoServiceImpl implements OperacaoService {
private Operacao operacaoEmAndamento;
@Override
@Lock(LockType.READ)
public Operacao getOperacaoEmAndamento() {
return operacaoEmAndamento;
}
@Override
@TransactionAttribute(TransactionAttributeType.NOT_SUPPORTED)
public void geraEIniciaOperacao() throws CoreException {
geraOperacao();
iniciaOperacao();
}
}
现在我已经使用 Wildfly 迁移到 Java 8,但它停止了工作。如果 geraEIniciaOperacao 仍在运行,我无法访问 getOperacaoEmAndamento。
" javax.ejb.ConcurrentAccessTimeoutException: WFLYEJB0241: EJB 3.1 OperacaoServiceImpl 上的 PFD2 4.8.5.5.1 并发访问超时 - 无法在 5000 毫秒内获得锁定 org.jboss.as.ejb3.concurrency.ContainerManagedConcurrencyInterceptor.processInvocation(ContainerManagedConcurrencyInterceptor.java:106) ……”
【问题讨论】: