-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
AS 4.2.2.GA
-
None
ClusteredIsLocalInterceptor determines whether a bean is available locally by checking the Ejb3Registry. Problem is beans are registered early in the deployment process, before they are started.
In the related forum thread pawel.wyrwinski reports how this particularly causes problems when an @Depends("jboss.ha:service=HASingletonDeployer,type=Barrier") annotation is used to make a bean act as an HASingleton. The bean is included in the Ejb3Registry on all nodes but is only started on one.
A logically obvious solution would be to check whether the target container is started before invoking locally. Unfortunately, AFAICT Container and its subclasses do not expose any method to support such a check.
Pawel reported this against 4.2.2 so that the "Affects Version" I used, but a quick code check leads me to believe it still exists.