]
Kabir Khan updated WFLY-1929:
-----------------------------
Fix Version/s: 9.0.0.Final
TransactionalInterceptorBase doesn't implement Serializable
-----------------------------------------------------------
Key: WFLY-1929
URL:
https://issues.jboss.org/browse/WFLY-1929
Project: WildFly
Issue Type: Bug
Components: Transactions
Affects Versions: 8.0.0.Alpha4
Reporter: Juergen Zimmermann
Assignee: Paul Robinson
Fix For: 9.0.0.Final
I just downloaded the latest WildFly snapshot which contains an upgrade of IronJacamar.
The annotation @Transactional works fine for @RequestScoped requests (see WFLY-1496).
However, if I'm using @SessionScoped for CDI beans in a JSF-based web application,
then I get the stacktrace below. The solution is pretty simple:
The interceptor class TransactionalInterceptorBase in Narayana's package
com.arjuna.ats.jta.cdi.transactional has to implement the interface java.io.Serializable.
The stacktrace:
{code}
17:25:52,861 ERROR [org.jboss.msc.service.fail] MSC000001: Failed to start service
jboss.deployment.unit."shop2.war".WeldStartService:
org.jboss.msc.service.StartException in service
jboss.deployment.unit."shop2.war".WeldStartService: Failed to start service
at
org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1900)
[jboss-msc-1.2.0.Beta2.jar:1.2.0.Beta2]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
[rt.jar:1.7.0_25]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
[rt.jar:1.7.0_25]
at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001527 Managed bean
declaring a passivating scope has a non-serializable interceptor. Bean: Managed Bean
[class de.shop.auth.web.AuthModel] with qualifiers [@Default @Any @Named] Interceptor:
org.jboss.weld.interceptor.reader.DefaultInterceptorMetadata@63abbf61
at org.jboss.weld.bean.ManagedBean.checkType(ManagedBean.java:214)
at org.jboss.weld.bean.AbstractBean.initializeAfterBeanDiscovery(AbstractBean.java:115)
at org.jboss.weld.bean.ManagedBean.initializeAfterBeanDiscovery(ManagedBean.java:122)
at
org.jboss.weld.bootstrap.ConcurrentBeanDeployer$AfterBeanDiscoveryInitializerFactory.doWork(ConcurrentBeanDeployer.java:129)
at
org.jboss.weld.bootstrap.ConcurrentBeanDeployer$AfterBeanDiscoveryInitializerFactory.doWork(ConcurrentBeanDeployer.java:120)
at
org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:60)
at
org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:53)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [rt.jar:1.7.0_25]
at java.util.concurrent.FutureTask.run(FutureTask.java:166) [rt.jar:1.7.0_25]
... 3 more
{code}