I'm currently testing the latest JBoss EAP 7.2.1 compared to the previous 7.2.0 release. While 7.2.0 worked just fine for our large enterprise application the later 7.2.1 now throws many exceptions like this one during startup:
WELD-001477: The bean Managed Bean [class package.SomeFacadeBean] with qualifiers [@Any @Default] declares a passivating scope but has a(n) Interceptor [class com.arjuna.ats.jta.cdi.transactional.TransactionalInterceptorMandatory intercepts @Transactional] with a non-passivation-capable dependency com.arjuna.ats.jta.cdi.JNDIBean@6f5e65a8
These beans are declared like this:
@ConversationScoped
public class SomeFacadeBean implements SomeFacade, Serializable {
// Simplified example...
@Transactional
public void someMethod(Object param) {
// ...
}
}
I could solve this initial WELD-001477
error in the EJB module by removing @ConversationScoped
here – but than this very same error is thrown for all my UI beans in the WEB module which use @Transactional
methods combined with @ConversationScoped
for their classes.
And I can't really remove @ConversationScoped
here – these are UI beans which need that scope.
@ConversationScoped
public class SomeBeanUI implements Serializable {
// Simplified example...
@Inject
private SomeFacade facade;
private Object anySerializable;
@Transactional
public void save() {
// ...
}
}
So how do I solve this new problem with JBoss EAP 7.2.1?
Just for the completeness... this regression has been fixed with EAP 7.2.3.