Calling a method on the proxy returned by SessionContext.getBusinessObject(Class) can lead to incorrect ConcurrentAccess(Timeout)Exceptions.
@Stateful public class ReentrantStatefulBean { @Resource private SessionContext ctx; private Object state; @TransactionAttribute(NEVER) public void callMe() { this.state = new Date().toString(); ctx.getBusinessObject(ReentrantStatefulBean.class).check(this.state); } @TransactionAttribute(REQUIRED) public void check(final Object check) { if (this.state != check) throw new IllegalStateException("EJB 3.1 FR 21.2 I'm not being myself today"); } }
- is related to
-
WFLY-727 Add flag to enable strict spec compliance and not allow re-entrancy into SFSBs
- Closed