1 Reply Latest reply on Jun 1, 2010 7:16 AM by sumathra

    BUG: org.jboss.seam.util.AnnotatedBeanProperty serializaion Exception

      I want to cluster seam application with session replication. I'm using JpaIdentityStore in standard way. Session attribute have referencies to not serializable object. See serialization stack:


      2010-03-31 14:11:44,828 ERROR [org.jboss.cache.marshall.CommandAwareRpcDispatcher] (http-127.0.0.1-9080-1) java.io.NotSerializableException: org.jboss.seam.util.AnnotatedBeanProperty
              - field (class "org.jboss.seam.security.permission.JpaPermissionStore", name: "actionProperty", type: "class org.jboss.seam.util.AnnotatedBeanProperty")
              - object (class "org.jboss.seam.security.permission.JpaPermissionStore", org.jboss.seam.security.permission.JpaPermissionStore@7eee2260)
              - field (class "org.jboss.seam.security.permission.PersistentPermissionResolver", name: "permissionStore", type: "interface org.jboss.seam.security.permission.PermissionStore")
              - object (class "org.jboss.seam.security.permission.PersistentPermissionResolver", org.jboss.seam.security.permission.PersistentPermissionResolver@1e5e27fa)
              - custom writeObject data (class "java.util.ArrayList")
              - object (class "java.util.ArrayList", [org.jboss.seam.security.permission.RuleBasedPermissionResolver@52b28256, org.jboss.seam.security.permission.PersistentPermissionResolver@1e5e27fa)
              - field (class "org.jboss.seam.security.permission.ResolverChain", name: "resolvers", type: "interface java.util.List")
              - object (class "org.jboss.seam.security.permission.ResolverChain", org.jboss.seam.security.permission.ResolverChain@3f2b5f75)
              - custom writeObject data (class "java.util.HashMap")
              - root object
      



      I want to report bug in Jira but I couldn't because I don't have permission to do it.


      Question: Why ResolverChain is in session context?

        • 1. Re: BUG: org.jboss.seam.util.AnnotatedBeanProperty serializaion Exception
          sumathra

          Env: JBoss 5.1.0, JBoss Seam 2.2.0


          I have a similar error while trying to get my application running in a clustered environment after login. Post login we try to store the currentUser in session context. Has anyone seen this error before, appreciate any kind of inputs on this issue.


          java.io.NotSerializableException: org.jboss.seam.util.AnnotatedBeanProperty
                  at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
          
                  at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java
          :1509)
                  at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:14
          74)
                  at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.jav
          a:1392)
                  at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
          
                  at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java
          :1509)
                  at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:14
          74)
                  at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.jav
          a:1392)
                  at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
          
                  at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
                  at java.util.ArrayList.writeObject(ArrayList.java:570)
                  at sun.reflect.GeneratedMethodAccessor339.invoke(Unknown Source)
                  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
          sorImpl.java:25)
                  at java.lang.reflect.Method.invoke(Method.java:597)
                  at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:94
          5)
                  at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:14
          61)
                  at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.jav
          a:1392)
                  at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
          
                  at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java
          :1509)
                  at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:14
          74)
                  at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.jav
          a:1392)
                  at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
          
                  at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
                  at java.util.HashMap.writeObject(HashMap.java:1001)
                  at sun.reflect.GeneratedMethodAccessor338.invoke(Unknown Source)
                  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
          sorImpl.java:25)
                  at java.lang.reflect.Method.invoke(Method.java:597)
                  at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:94
          5)
                  at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:14
          61)
                  at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.jav
          a:1392)
                  at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
          
                  at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
                  at org.jboss.ha.framework.server.SimpleCachableMarshalledValue.serialize
          (SimpleCachableMarshalledValue.java:271)
                  at org.jboss.ha.framework.server.SimpleCachableMarshalledValue.writeExte
          rnal(SimpleCachableMarshalledValue.java:252)
                  at java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:
          1421)
                  at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.jav
          a:1390)
                  at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)
          
                  at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
                  at org.jboss.cache.marshall.CacheMarshaller200.marshallObject(CacheMarsh
          aller200.java:460)
                  at org.jboss.cache.marshall.CacheMarshaller300.marshallObject(CacheMarsh
          aller300.java:47)
                  at org.jboss.cache.marshall.CacheMarshaller200.marshallMap(CacheMarshall
          er200.java:569)
                  at org.jboss.cache.marshall.CacheMarshaller200.marshallObject(CacheMarsh
          aller200.java:370)
                  at org.jboss.cache.marshall.CacheMarshaller300.marshallObject(CacheMarsh
          aller300.java:47)
                  at org.jboss.cache.marshall.CacheMarshaller200.marshallCommand(CacheMars
          haller200.java:519)
                  at org.jboss.cache.marshall.CacheMarshaller200.marshallObject(CacheMarsh
          aller200.java:314)
                  at org.jboss.cache.marshall.CacheMarshaller300.marshallObject(CacheMarsh
          aller300.java:47)
                  at org.jboss.cache.marshall.CacheMarshaller200.marshallCommand(CacheMars
          haller200.java:519)
                  at org.jboss.cache.marshall.CacheMarshaller200.marshallObject(CacheMarsh
          aller200.java:314)
                  at org.jboss.cache.marshall.CacheMarshaller300.marshallObject(CacheMarsh
          aller300.java:47)
                  at org.jboss.cache.marshall.CacheMarshaller200.objectToObjectStream(Cach
          eMarshaller200.java:191)
                  at org.jboss.cache.marshall.CacheMarshaller200.objectToObjectStream(Cach
          eMarshaller200.java:136)
                  at org.jboss.cache.marshall.VersionAwareMarshaller.objectToBuffer(Versio
          nAwareMarshaller.java:182)
                  at org.jboss.cache.marshall.VersionAwareMarshaller.objectToBuffer(Versio
          nAwareMarshaller.java:52)
                  at org.jboss.cache.marshall.CommandAwareRpcDispatcher$ReplicationTask.ca
          ll(CommandAwareRpcDispatcher.java:369)
                  at org.jboss.cache.marshall.CommandAwareRpcDispatcher$ReplicationTask.ca
          ll(CommandAwareRpcDispatcher.java:341)
                  at org.jboss.cache.util.concurrent.WithinThreadExecutor.submit(WithinThr
          eadExecutor.java:82)
                  at org.jboss.cache.marshall.CommandAwareRpcDispatcher.invokeRemoteComman
          ds(CommandAwareRpcDispatcher.java:206)
                  at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:
          748)
                  at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:
          716)
                  at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:
          721)
                  at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpc
          Interceptor.java:161)
                  at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpc
          Interceptor.java:135)
                  at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpc
          Interceptor.java:107)
                  at org.jboss.cache.interceptors.ReplicationInterceptor.handleCrudMethod(
          ReplicationInterceptor.java:160)
                  at org.jboss.cache.interceptors.ReplicationInterceptor.visitPutDataMapCo
          mmand(ReplicationInterceptor.java:113)
                  at org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDat
          aMapCommand.java:104)
                  at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterc
          eptor(CommandInterceptor.java:116)
                  at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(Co
          mmandInterceptor.java:131)
                  at org.jboss.cache.commands.AbstractVisitor.visitPutDataMapCommand(Abstr
          actVisitor.java:60)
                  at org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDat
          aMapCommand.java:104)
                  at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterc
          eptor(CommandInterceptor.java:116)
                  at org.jboss.cache.interceptors.TxInterceptor.attachGtxAndPassUpChain(Tx
          Interceptor.java:301)
                  at org.jboss.cache.interceptors.TxInterceptor.handleDefault(TxIntercepto
          r.java:283)
                  at org.jboss.cache.commands.AbstractVisitor.visitPutDataMapCommand(Abstr
          actVisitor.java:60)
                  at org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDat
          aMapCommand.java:104)
                  at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterc
          eptor(CommandInterceptor.java:116)
                  at org.jboss.cache.interceptors.CacheMgmtInterceptor.visitPutDataMapComm
          and(CacheMgmtInterceptor.java:97)
                  at org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDat
          aMapCommand.java:104)
                  at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterc
          eptor(CommandInterceptor.java:116)
                  at org.jboss.cache.interceptors.InvocationContextInterceptor.handleAll(I
          nvocationContextInterceptor.java:178)
                  at org.jboss.cache.interceptors.InvocationContextInterceptor.visitPutDat
          aMapCommand(InvocationContextInterceptor.java:64)
                  at org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDat
          aMapCommand.java:104)
                  at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain
          .java:287)
                  at org.jboss.cache.invocation.CacheInvocationDelegate.invokePut(CacheInv
          ocationDelegate.java:705)
                  at org.jboss.cache.invocation.CacheInvocationDelegate.put(CacheInvocatio
          nDelegate.java:519)
                  at org.jboss.ha.cachemanager.CacheManagerManagedCache.put(CacheManagerMa
          nagedCache.java:277)
                  at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.JBossC
          acheWrapper.put(JBossCacheWrapper.java:148)
                  at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.Abstra
          ctJBossCacheService.storeSessionData(AbstractJBossCacheService.java:405)
                  at org.jboss.web.tomcat.service.session.ClusteredSession.processSessionR
          eplication(ClusteredSession.java:1166)
                  at org.jboss.web.tomcat.service.session.JBossCacheManager.processSession
          Repl(JBossCacheManager.java:1937)
                  at org.jboss.web.tomcat.service.session.JBossCacheManager.storeSession(J
          BossCacheManager.java:309)
                  at org.jboss.web.tomcat.service.session.InstantSnapshotManager.snapshot(
          InstantSnapshotManager.java:51)
                  at org.jboss.web.tomcat.service.session.ClusteredSessionValve.handleRequ
          est(ClusteredSessionValve.java:147)
                  at org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
          steredSessionValve.java:94)
                  at org.jboss.web.tomcat.service.session.LockingValve.invoke(LockingValve
          .java:62)
                  at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
          torBase.java:433)
                  at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
          e.java:92)
                  at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.proce
          ss(SecurityContextEstablishmentValve.java:126)
                  at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invok
          e(SecurityContextEstablishmentValve.java:70)
                  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
          ava:127)
                  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
          ava:102)
                  at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
          onnectionValve.java:158)
                  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
          ve.java:109)
                  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
          a:330)
                  at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
          :829)
                  at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
          ss(Http11Protocol.java:598)
                  at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
          7)
                  at java.lang.Thread.run(Thread.java:619)
          16:38:35,789 ERROR [CommandAwareRpcDispatcher] java.io.NotSerializableException:
           org.jboss.seam.util.AnnotatedBeanProperty
          16:38:35,789 WARN  [/a12] Failed to replicate session YwBL69cG-zdm0m5CvzNj3Q__
          java.lang.RuntimeException: Failure to marshal argument(s)
                  at org.jboss.cache.marshall.CommandAwareRpcDispatcher$ReplicationTask.ca
          ll(CommandAwareRpcDispatcher.java:374)
                  at org.jboss.cache.marshall.CommandAwareRpcDispatcher$ReplicationTask.ca
          ll(CommandAwareRpcDispatcher.java:341)
                  at org.jboss.cache.util.concurrent.WithinThreadExecutor.submit(WithinThr
          eadExecutor.java:82)
                  at org.jboss.cache.marshall.CommandAwareRpcDispatcher.invokeRemoteComman
          ds(CommandAwareRpcDispatcher.java:206)
                  at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:
          748)
                  at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:
          716)
                  at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:
          721)
                  at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpc
          Interceptor.java:161)
                  at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpc
          Interceptor.java:135)
                  at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpc
          Interceptor.java:107)
                  at org.jboss.cache.interceptors.ReplicationInterceptor.handleCrudMethod(
          ReplicationInterceptor.java:160)
                  at org.jboss.cache.interceptors.ReplicationInterceptor.visitPutDataMapCo
          mmand(ReplicationInterceptor.java:113)
                  at org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDat
          aMapCommand.java:104)
                  at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterc
          eptor(CommandInterceptor.java:116)
                  at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(Co
          mmandInterceptor.java:131)
                  at org.jboss.cache.commands.AbstractVisitor.visitPutDataMapCommand(Abstr
          actVisitor.java:60)
                  at org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDat
          aMapCommand.java:104)
                  at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterc
          eptor(CommandInterceptor.java:116)
                  at org.jboss.cache.interceptors.TxInterceptor.attachGtxAndPassUpChain(Tx
          Interceptor.java:301)
                  at org.jboss.cache.interceptors.TxInterceptor.handleDefault(TxIntercepto
          r.java:283)
                  at org.jboss.cache.commands.AbstractVisitor.visitPutDataMapCommand(Abstr
          actVisitor.java:60)
                  at org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDat
          aMapCommand.java:104)
                  at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterc
          eptor(CommandInterceptor.java:116)
                  at org.jboss.cache.interceptors.CacheMgmtInterceptor.visitPutDataMapComm
          and(CacheMgmtInterceptor.java:97)
                  at org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDat
          aMapCommand.java:104)
                  at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterc
          eptor(CommandInterceptor.java:116)
                  at org.jboss.cache.interceptors.InvocationContextInterceptor.handleAll(I
          nvocationContextInterceptor.java:178)
                  at org.jboss.cache.interceptors.InvocationContextInterceptor.visitPutDat
          aMapCommand(InvocationContextInterceptor.java:64)
                  at org.jboss.cache.commands.write.PutDataMapCommand.acceptVisitor(PutDat
          aMapCommand.java:104)
                  at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain
          .java:287)
                  at org.jboss.cache.invocation.CacheInvocationDelegate.invokePut(CacheInv
          ocationDelegate.java:705)
                  at org.jboss.cache.invocation.CacheInvocationDelegate.put(CacheInvocatio
          nDelegate.java:519)
                  at org.jboss.ha.cachemanager.CacheManagerManagedCache.put(CacheManagerMa
          nagedCache.java:277)
                  at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.JBossC
          acheWrapper.put(JBossCacheWrapper.java:148)
                  at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.Abstra
          ctJBossCacheService.storeSessionData(AbstractJBossCacheService.java:405)
                  at org.jboss.web.tomcat.service.session.ClusteredSession.processSessionR
          eplication(ClusteredSession.java:1166)
                  at org.jboss.web.tomcat.service.session.JBossCacheManager.processSession
          Repl(JBossCacheManager.java:1937)
                  at org.jboss.web.tomcat.service.session.JBossCacheManager.storeSession(J
          BossCacheManager.java:309)
                  at org.jboss.web.tomcat.service.session.InstantSnapshotManager.snapshot(
          InstantSnapshotManager.java:51)
                  at org.jboss.web.tomcat.service.session.ClusteredSessionValve.handleRequ
          est(ClusteredSessionValve.java:147)
                  at org.jboss.web.tomcat.service.session.ClusteredSessionValve.invoke(Clu
          steredSessionValve.java:94)
                  at org.jboss.web.tomcat.service.session.LockingValve.invoke(LockingValve
          .java:62)
                  at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
          torBase.java:433)
                  at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv
          e.java:92)
                  at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.proce
          ss(SecurityContextEstablishmentValve.java:126)
                  at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invok
          e(SecurityContextEstablishmentValve.java:70)
                  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
          ava:127)
                  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
          ava:102)
                  at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedC
          onnectionValve.java:158)
                  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
          ve.java:109)
                  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
          a:330)
                  at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
          :829)
                  at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce
          ss(Http11Protocol.java:598)
                  at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:44
          7)
                  at java.lang.Thread.run(Thread.java:619)