<div dir="ltr">Hi,<div><br></div><div>I came across a situation where a ConcurrentAccessTimeoutException is thrown on WildFly 10.0.0 and 10.1cr1 when an @Stateful @ViewScoped bean contains a CDI producer.</div><div><br></div><div>In short, there are 3 beans all @Stateful @ViewScoped. Beans 1 and 2 are injected in bean 3. </div><div><br></div><div>Bean 1 contains a CDI producer.</div><div>Bean 2 is injected with a type from said producer.</div><div><br></div><div>The following causes a ConcurrentAccessTimeoutException to be thrown:</div><div><br></div><div>bean3.somemethod:</div><div>    tx start<br>       access stateful bean 1<br>       access stateful bean 2<br>        (from statefull bean 2): access injected type that causes producer from bean 1 to be called<br>    tx end<br></div><div><br></div><div>If the call to stateful bean 1 is omitted, the producer is called normally when bean 2 accesses the injected type.</div><div><br></div><div>If bean 2 is injected directly with bean 1, then bean 1 can be accessed without any ConcurrentAccessTimeoutException being thrown.</div><div><br></div><div>The code runs fine on WildFly 8.2.</div><div><br></div><div>I&#39;ll do some further digging, but wonder if this problem rings any bells. Could it be that CDI obtains a reference to the stateful bean in such a way that the implicit EJB interceptor doesn&#39;t see it&#39;s still within the same TX? But since there&#39;s no call to bean 1 in progress at that point, should this even matter?</div><div><br></div><div>Kind regards,</div><div>Arjan Tijms</div></div>