to give some details it happens when an interceptor is not
serializable (see last method of
https://svn.apache.org/repos/asf/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/intercept/DefaultInterceptorHandler.java)

it should be easy to debug this method to see just the level upper
which bean you deserialize and then identify the missing interceptor.

can you try it?
Romain Manni-Bucau
Twitter: @rmannibucau
Blog: http://rmannibucau.wordpress.com/
LinkedIn: http://fr.linkedin.com/in/rmannibucau
Github: https://github.com/rmannibucau



2013/10/30 Romain Manni-Bucau <[email protected]>:
> Hi
>
> In a war no idea, maybe active tomcat FINE logs
>
> Le 30 oct. 2013 19:14, <[email protected]> a écrit :
>
>> Hi!
>>
>> I have just tested replication in tomee-1.6.0-20131030.065404-219. OWB Bug
>> seems to be fixed, but there is new one.
>> The First replication works perfect, but after session migration to
>> another node I've got following exeception:
>>
>> java.io.NotSerializableException: null is not serializable
>>         at
>> org.apache.webbeans.intercept.DefaultInterceptorHandler.serializeInterceptor(DefaultInterceptorHandler.java:266)
>>         at
>> org.apache.webbeans.intercept.DefaultInterceptorHandler.writeExternal(DefaultInterceptorHandler.java:183)
>>         at
>> java.io.ObjectOutputStream.writeExternalData(ObjectOutputStream.java:1443)
>>         at
>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1414)
>>         at
>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
>>         at
>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
>>         at
>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
>>         at
>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
>>         at
>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
>>         at
>> java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
>>         at
>> org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.writeExternal(DeltaRequest.java:392)
>>         at
>> org.apache.catalina.ha.session.DeltaRequest.writeExternal(DeltaRequest.java:285)
>>         at
>> org.apache.catalina.ha.session.DeltaRequest.serialize(DeltaRequest.java:299)
>>         at
>> org.apache.catalina.ha.session.DeltaSession.getDiff(DeltaSession.java:143)
>>         at
>> org.apache.catalina.tribes.tipis.AbstractReplicatedMap.replicate(AbstractReplicatedMap.java:426)
>>         at
>> org.apache.catalina.ha.session.BackupManager.requestCompleted(BackupManager.java:121)
>>         at
>> org.apache.catalina.ha.tcp.ReplicationValve.send(ReplicationValve.java:539)
>>         at
>> org.apache.catalina.ha.tcp.ReplicationValve.sendMessage(ReplicationValve.java:526)
>>         at
>> org.apache.catalina.ha.tcp.ReplicationValve.sendSessionReplicationMessage(ReplicationValve.java:508)
>>         at
>> org.apache.catalina.ha.tcp.ReplicationValve.sendReplicationMessage(ReplicationValve.java:421)
>>         at
>> org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.java:345)
>>         at
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
>>         at
>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
>>         at
>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
>>         at
>> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
>>         at
>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>>         at
>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>>         at java.lang.Thread.run(Thread.java:722)
>>
>> After that session replication stops working at all. Unfortunately I can't
>> reproduce the issue with my sample application. Could you give me a clue how
>> to reproduce this in simple app?
>>
>> Regards,
>> Dmitry Volkov.
>>
>> -----Ursprüngliche Nachricht-----
>> Von: Romain Manni-Bucau [mailto:[email protected]]
>> Gesendet: Dienstag, 6. August 2013 12:18
>> An: [email protected]
>> Betreff: Re: Session replication in TomEE 1.6.0-SNAPSHOT
>>
>> Hi,
>>
>> that's an OWB issue (no link with clustering)
>>
>> i'll push it over OWB list. Thanks for the report.
>>
>> *Romain Manni-Bucau*
>> *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
>> *Blog:
>> **http://rmannibucau.wordpress.com/*<http://rmannibucau.wordpress.com/>
>> *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
>> *Github: https://github.com/rmannibucau*
>>
>>
>>
>> 2013/8/6 <[email protected]>
>>
>> > Hi
>> >
>> > There is the sample app: https://github.com/eiskonzept/tomee
>> > Package the application and start two tomee instances with tomee maven
>> > plugin (maven profiles "node1" and "node2"). Then open /index.xhtml
>> > from application root.
>> >
>> > The issue can be reproduced when replicated CDI bean is intercepted by
>> > CDI interceptor.
>> >
>> >
>> >
>> > -----Ursprüngliche Nachricht-----
>> > Von: Romain Manni-Bucau [mailto:[email protected]]
>> > Gesendet: Montag, 5. August 2013 10:10
>> > An: [email protected]
>> > Betreff: Re: Session replication in TomEE 1.6.0-SNAPSHOT
>> >
>> > Hi
>> >
>> > can you reproduce it in a sample?
>> >
>> > *Romain Manni-Bucau*
>> > *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
>> > *Blog: **http://rmannibucau.wordpress.com/*<
>> > http://rmannibucau.wordpress.com/>
>> > *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
>> > *Github: https://github.com/rmannibucau*
>> >
>> >
>> >
>> > 2013/8/5 <[email protected]>
>> >
>> > > I have tested replication with last 1.6.0-SNAPSHOT and got following
>> > > exception:
>> > >
>> > > java.io.NotSerializableException:
>> > > org.apache.webbeans.intercept.DefaultInterceptorHandler
>> > >         at
>> > > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
>> > >         at
>> > >
>> > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
>> > 1528)
>> > >         at
>> > >
>> > > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
>> > >         at
>> > >
>> > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java
>> > :1416)
>> > >         at
>> > > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
>> > >         at
>> > > java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
>> > >         at
>> > >
>> > org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.writeExterna
>> > l(DeltaRequest.java:392)
>> > >         at
>> > >
>> > org.apache.catalina.ha.session.DeltaRequest.writeExternal(DeltaRequest
>> > .java:285)
>> > >         at
>> > >
>> > org.apache.catalina.ha.session.DeltaRequest.serialize(DeltaRequest.jav
>> > a:299)
>> > >         at
>> > >
>> > org.apache.catalina.ha.session.DeltaSession.getDiff(DeltaSession.java:
>> > 143)
>> > >         at
>> > >
>> > org.apache.catalina.tribes.tipis.AbstractReplicatedMap.replicate(Abstr
>> > actReplicatedMap.java:424)
>> > >         at
>> > >
>> > org.apache.catalina.ha.session.BackupManager.requestCompleted(BackupMa
>> > nager.java:104)
>> > >         at
>> > >
>> > org.apache.catalina.ha.tcp.ReplicationValve.send(ReplicationValve.java
>> > :539)
>> > >         at
>> > >
>> > org.apache.catalina.ha.tcp.ReplicationValve.sendMessage(ReplicationVal
>> > ve.java:526)
>> > >         at
>> > >
>> > org.apache.catalina.ha.tcp.ReplicationValve.sendSessionReplicationMess
>> > age(ReplicationValve.java:508)
>> > >         at
>> > >
>> > org.apache.catalina.ha.tcp.ReplicationValve.sendReplicationMessage(Rep
>> > licationValve.java:421)
>> > >         at
>> > >
>> > org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.ja
>> > va:345)
>> > >         at
>> > >
>> > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java
>> > :408)
>> > >         at
>> > >
>> > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp1
>> > 1Processor.java:1023)
>> > >         at
>> > >
>> > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(A
>> > bstractProtocol.java:589)
>> > >         at
>> > >
>> > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint
>> > .java:312)
>> > >         at
>> > >
>> > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.j
>> > ava:1110)
>> > >         at
>> > >
>> > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.
>> > java:603)
>> > >         at java.lang.Thread.run(Thread.java:722)
>> > >
>> > > -----Ursprüngliche Nachricht-----
>> > > Von: Romain Manni-Bucau [mailto:[email protected]]
>> > > Gesendet: Freitag, 2. August 2013 16:15
>> > > An: [email protected]
>> > > Betreff: Re: Session replication in TomEE 1.6.0-SNAPSHOT
>> > >
>> > > Hi,
>> > >
>> > > just commited sthg about it, not sure it is linked but i think so.
>> > >
>> > > *Romain Manni-Bucau*
>> > > *Twitter: @rmannibucau <https://twitter.com/rmannibucau>*
>> > > *Blog: **http://rmannibucau.wordpress.com/*<
>> > > http://rmannibucau.wordpress.com/>
>> > > *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
>> > > *Github: https://github.com/rmannibucau*
>> > >
>> > >
>> > >
>> > > 2013/8/2 <[email protected]>
>> > >
>> > > > Hi!
>> > > >
>> > > > I have just tested session replication in TomEE 1.6.0-SNAPSHOT and
>> > > > got following exception:
>> > > >
>> > > > java.io.NotSerializableException:
>> > > > org.apache.tomee.catalina.cdi.SessionNormalScopeBeanHandler$1
>> > > >         at
>> > > >
>> > > > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
>> > > >         at
>> > > >
>> > > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
>> > > 1528)
>> > > >         at
>> > > >
>> > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:149
>> > 3)
>> > > >         at
>> > > >
>> > > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.ja
>> > > va
>> > > :1416)
>> > > >         at
>> > > >
>> > > > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
>> > > >         at
>> > > >
>> > > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
>> > > 1528)
>> > > >         at
>> > > >
>> > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:149
>> > 3)
>> > > >         at
>> > > >
>> > > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.ja
>> > > va
>> > > :1416)
>> > > >         at
>> > > >
>> > > > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
>> > > >         at
>> > > >
>> > > java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:
>> > > 1528)
>> > > >         at
>> > > >
>> > java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:149
>> > 3)
>> > > >         at
>> > > >
>> > > java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.ja
>> > > va
>> > > :1416)
>> > > >         at
>> > > >
>> > > > java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
>> > > >         at
>> > > > java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
>> > > >         at
>> > > >
>> > > org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.writeExter
>> > > na
>> > > l(DeltaRequest.java:392)
>> > > >         at
>> > > >
>> > > org.apache.catalina.ha.session.DeltaRequest.writeExternal(DeltaReque
>> > > st
>> > > .java:285)
>> > > >         at
>> > > >
>> > > org.apache.catalina.ha.session.DeltaRequest.serialize(DeltaRequest.j
>> > > av
>> > > a:299)
>> > > >         at
>> > > >
>> > > org.apache.catalina.ha.session.DeltaSession.getDiff(DeltaSession.java:
>> > > 143)
>> > > >         at
>> > > >
>> > > org.apache.catalina.tribes.tipis.AbstractReplicatedMap.replicate(Abs
>> > > tr
>> > > actReplicatedMap.java:424)
>> > > >         at
>> > > >
>> > > org.apache.catalina.ha.session.BackupManager.requestCompleted(Backup
>> > > Ma
>> > > nager.java:104)
>> > > >         at
>> > > >
>> > > org.apache.catalina.ha.tcp.ReplicationValve.send(ReplicationValve.ja
>> > > va
>> > > :539)
>> > > >         at
>> > > >
>> > > org.apache.catalina.ha.tcp.ReplicationValve.sendMessage(ReplicationV
>> > > al
>> > > ve.java:526)
>> > > >         at
>> > > >
>> > > org.apache.catalina.ha.tcp.ReplicationValve.sendSessionReplicationMe
>> > > ss
>> > > age(ReplicationValve.java:508)
>> > > >         at
>> > > >
>> > > org.apache.catalina.ha.tcp.ReplicationValve.sendReplicationMessage(R
>> > > ep
>> > > licationValve.java:421)
>> > > >         at
>> > > >
>> > > org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.
>> > > ja
>> > > va:345)
>> > > >         at
>> > > >
>> > > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.ja
>> > > va
>> > > :408)
>> > > >         at
>> > > >
>> > > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHtt
>> > > p1
>> > > 1Processor.java:1023)
>> > > >         at
>> > > >
>> > > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process
>> > > (A
>> > > bstractProtocol.java:589)
>> > > >         at
>> > > >
>> > > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoi
>> > > nt
>> > > .java:310)
>> > > >         at
>> > > >
>> > > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor
>> > > .j
>> > > ava:1110)
>> > > >         at
>> > > >
>> > > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.
>> > > java:603)
>> > > >         at java.lang.Thread.run(Thread.java:722)
>> > > >
>> > > > Tested application uses CDI, CODI and EJB 3.0 Stateless beans.
>> > > >
>> > > > Best regards,
>> > > > Dmitry Volkov
>> > > >
>> > > >
>> > > >
>> > >
>> >

Reply via email to