Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-1929

TransactionalInterceptorBase doesn't implement Serializable

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 9.0.0.Final
    • 8.0.0.Alpha4
    • Transactions
    • None

    Description

      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:

      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
      

      Attachments

        Issue Links

          Activity

            People

              paul.robinson@redhat.com Paul Robinson
              juergen.zimmermann Juergen Zimmermann (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: