tested your app with export CATALINA_OPTS="-Dopenejb.session-context=http
-Dtomee.session-context.wrapper=http" and it worked

*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/2/9 Romain Manni-Bucau <[email protected]>

> Hi,
>
> "fill the form, stop current node and press save button."?
>
> you mean i don't save before stopping the instance?
>
> *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/2/8 <[email protected]>
>
> I have just reproduced the issue with Apache CODI example app(here:
>> https://docs.google.com/file/d/0B1jOAi2N2uY8ZWdxcmx6TjFvUEE/edit?usp=sharing).
>>
>> To reproduce: install and open application context root, fill the form,
>> stop current node and press save button.
>>
>> Exception:
>> java.lang.NullPointerException
>>         at
>> org.apache.myfaces.extensions.cdi.jsf.impl.scope.conversation.ViewAccessConversationExpirationEvaluator.getCurrentViewId(ViewAccessConversationExpirationEvaluator.java:115)
>>         at
>> org.apache.myfaces.extensions.cdi.jsf.impl.scope.conversation.ViewAccessConversationExpirationEvaluator.isExpired(ViewAccessConversationExpirationEvaluator.java:86)
>>         at
>> org.apache.myfaces.extensions.cdi.jsf.impl.scope.conversation.DefaultConversation.isConversationExpired(DefaultConversation.java:194)
>>         at
>> org.apache.myfaces.extensions.cdi.jsf.impl.scope.conversation.DefaultConversation.isActive(DefaultConversation.java:90)
>>         at
>> org.apache.myfaces.extensions.cdi.jsf.impl.scope.conversation.WindowContextManagerObserver.cleanupInactiveConversations(WindowContextManagerObserver.java:225)
>>         at
>> org.apache.myfaces.extensions.cdi.jsf.impl.scope.conversation.WindowContextManagerObserver.cleanup(WindowContextManagerObserver.java:123)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>         at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:601)
>>         at
>> org.apache.webbeans.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:295)
>>         at
>> org.apache.webbeans.event.NotificationManager.fireEvent(NotificationManager.java:429)
>>         at
>> org.apache.webbeans.container.BeanManagerImpl.fireEvent(BeanManagerImpl.java:484)
>>         at org.apache.webbeans.event.EventImpl.fire(EventImpl.java:75)
>>         at
>> org.apache.myfaces.extensions.cdi.jsf.impl.listener.phase.JsfRequestLifecycleBroadcaster.broadcastAfterEvent(JsfRequestLifecycleBroadcaster.java:64)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>         at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:601)
>>         at
>> org.apache.webbeans.intercept.InterceptorHandler.invoke(InterceptorHandler.java:322)
>>         at
>> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.invoke(NormalScopedBeanInterceptorHandler.java:117)
>>         at
>> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.invoke(NormalScopedBeanInterceptorHandler.java:108)
>>         at
>> org.apache.myfaces.extensions.cdi.jsf.impl.listener.phase.JsfRequestLifecycleBroadcaster_$$_javassist_23.broadcastAfterEvent(JsfRequestLifecycleBroadcaster_$$_javassist_23.java)
>>         at
>> org.apache.myfaces.extensions.cdi.jsf.impl.listener.phase.JsfRequestLifecyclePhaseListener.afterPhase(JsfRequestLifecyclePhaseListener.java:64)
>>         at
>> org.apache.myfaces.lifecycle.PhaseListenerManager.informPhaseListenersAfter(PhaseListenerManager.java:117)
>>         at
>> org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:185)
>>         at
>> org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
>>         at
>> org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecycleWrapper.execute(CodiLifecycleWrapper.java:95)
>>         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
>>         at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>>         at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>         at
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
>>         at
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>>         at
>> org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
>>         at
>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
>>         at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
>>         at
>> org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.java:333)
>>         at
>> org.apache.catalina.ha.session.JvmRouteBinderValve.invoke(JvmRouteBinderValve.java:219)
>>         at
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
>>         at
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>>         at
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
>>         at
>> org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)
>>         at
>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
>>         at
>> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
>>         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)
>>
>> -----Ursprüngliche Nachricht-----
>> Von: Romain Manni-Bucau [mailto:[email protected]]
>> Gesendet: Donnerstag, 7. Februar 2013 15:07
>> An: [email protected]
>> Betreff: Re: AW: Passivation capable CDI beans replication across cluster
>> does not work
>>
>> PS: just tested your app (github) and didnt get any issue
>>
>> any help to reproduce it?
>>
>> *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/2/7 Romain Manni-Bucau <[email protected]>
>>
>> > the test is value == null or not so whatever you put to activate it it
>> > will be on.
>> >
>> > then the property "tomee.session-context.wrapper" can be direct or
>> > something else. Direct is the most efficient but only works for single
>> > instance since it uses directly the internal session of tomcat.
>> >
>> > Normally nothing more is needed to be configured while the instances
>> > are iso regarding the serialization (same JVM, same webapps
>> > deployed...)
>> >
>> > *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/2/7 <[email protected]>
>> >
>> > Did you mean openejb.session-context = http (not true) ?
>> >>
>> >> I have checked that app is deployed on both nodes. Still have an
>> >> exception.
>> >> Are there some specific settings for CDI beans replication?
>> >> -----Ursprüngliche Nachricht-----
>> >> Von: Romain Manni-Bucau [mailto:[email protected]]
>> >> Gesendet: Donnerstag, 7. Februar 2013 11:59
>> >> An: [email protected]
>> >> Betreff: Re: AW: Passivation capable CDI beans replication across
>> >> cluster does not work
>> >>
>> >> when i got this error the app on a node was not yet deployed so the
>> >> class was not able to be found
>> >>
>> >> conf/system.properties:
>> >> openejb.session-context = true
>> >>
>> >> # optional normally
>> >> tomee.session-context.wrapper = http # or direct if single instance
>> >>
>> >> *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/2/7 <[email protected]>
>> >>
>> >> > Hi,
>> >> >
>> >> > Session replication is still not working. Just tested my
>> >> > application(JSF 2.0, EJB, CDI, CODI) and got exception after TomEE
>> >> > has tried to replicate the session.
>> >> > I would like to reproduce this exception in test app, but have no
>> >> > idea how to do it.
>> >> > Could you also please summarize, which properties in
>> >> > system.properties should I set, to get replication working?
>> >> >
>> >> > SEVERE: Manager [/CDP_v10]: Unable to receive message through TCP
>> >> > channel
>> >> > java.lang.RuntimeException: by java.lang.NoClassDefFoundError:
>> >> >
>> >> org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/spi/Edi
>> >> tableWindowContext
>> >> >         at
>> >> > javassist.util.proxy.ProxyFactory.createClass3(ProxyFactory.java:515)
>> >> >         at
>> >> > javassist.util.proxy.ProxyFactory.createClass2(ProxyFactory.java:492)
>> >> >         at
>> >> > javassist.util.proxy.ProxyFactory.createClass1(ProxyFactory.java:428)
>> >> >         at
>> >> > javassist.util.proxy.ProxyFactory.createClass(ProxyFactory.java:420)
>> >> >         at
>> >> >
>> >> javassist.util.proxy.SerializedProxy.readResolve(SerializedProxy.java
>> >> :85)
>> >> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>> Method)
>> >> >         at
>> >> >
>> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
>> >> java:57)
>> >> >         at
>> >> >
>> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
>> >> sorImpl.java:43)
>> >> >         at java.lang.reflect.Method.invoke(Method.java:601)
>> >> >         at
>> >> >
>> java.io.ObjectStreamClass.invokeReadResolve(ObjectStreamClass.java:1091)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 780)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> >
>> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1964)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1888)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> >
>> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1964)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1888)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
>> >> >         at
>> >> >
>> >> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.j
>> >> ava:1557)
>> >> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>> Method)
>> >> >         at
>> >> >
>> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
>> >> java:57)
>> >> >         at
>> >> >
>> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
>> >> sorImpl.java:43)
>> >> >         at java.lang.reflect.Method.invoke(Method.java:601)
>> >> >         at
>> >> >
>> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> >
>> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1964)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1888)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> >
>> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1964)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1888)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
>> >> >         at
>> >> >
>> >> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.j
>> >> ava:1557)
>> >> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>> Method)
>> >> >         at
>> >> >
>> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
>> >> java:57)
>> >> >         at
>> >> >
>> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
>> >> sorImpl.java:43)
>> >> >         at java.lang.reflect.Method.invoke(Method.java:601)
>> >> >         at
>> >> >
>> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> >
>> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1964)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1888)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
>> >> >         at
>> >> >
>> >> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.j
>> >> ava:1557)
>> >> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
>> Method)
>> >> >         at
>> >> >
>> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
>> >> java:57)
>> >> >         at
>> >> >
>> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
>> >> sorImpl.java:43)
>> >> >         at java.lang.reflect.Method.invoke(Method.java:601)
>> >> >         at
>> >> >
>> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> >
>> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1964)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1888)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> >
>> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1964)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1888)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> >
>> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1964)
>> >> >         at
>> >> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1888)
>> >> >         at
>> >> >
>> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1
>> >> 771)
>> >> >         at
>> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> >> >         at
>> >> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
>> >> >         at
>> >> >
>> >> org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.readExterna
>> >> l(DeltaRequest.java:378)
>> >> >         at
>> >> >
>> >> org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaRequest
>> >> .java:268)
>> >> >         at
>> >> >
>> >> org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest(D
>> >> eltaManager.java:604)
>> >> >         at
>> >> >
>> >> org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(Delta
>> >> Manager.java:1346)
>> >> >         at
>> >> >
>> >> org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaMana
>> >> ger.java:1293)
>> >> >         at
>> >> >
>> >> org.apache.catalina.ha.session.DeltaManager.messageDataReceived(Delta
>> >> Manager.java:1014)
>> >> >         at
>> >> >
>> >> org.apache.catalina.ha.session.ClusterSessionListener.messageReceived
>> >> (ClusterSessionListener.java:92)
>> >> >         at
>> >> >
>> >> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcp
>> >> Cluster.java:924)
>> >> >         at
>> >> >
>> >> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcp
>> >> Cluster.java:905)
>> >> >         at
>> >> >
>> >> org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupCh
>> >> annel.java:278)
>> >> >         at
>> >> >
>> >> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceiv
>> >> ed(ChannelInterceptorBase.java:84)
>> >> >         at
>> >> >
>> >> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceiv
>> >> ed(ChannelInterceptorBase.java:84)
>> >> >         at
>> >> >
>> >> org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.mess
>> >> ageReceived(TcpFailureDetector.java:114)
>> >> >         at
>> >> >
>> >> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceiv
>> >> ed(ChannelInterceptorBase.java:84)
>> >> >         at
>> >> >
>> >> org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived(C
>> >> hannelCoordinator.java:253)
>> >> >         at
>> >> >
>> >> org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceived
>> >> (ReceiverBase.java:287)
>> >> >         at
>> >> >
>> >> org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChan
>> >> nel(NioReplicationTask.java:212)
>> >> >         at
>> >> >
>> >> org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioRe
>> >> plicationTask.java:101)
>> >> >         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)
>> >> > Caused by: javassist.CannotCompileException: by
>> >> > java.lang.NoClassDefFoundError:
>> >> >
>> >> org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/spi/Edi
>> >> tableWindowContext
>> >> >         at
>> >> > javassist.util.proxy.FactoryHelper.toClass(FactoryHelper.java:170)
>> >> >         at
>> >> > javassist.util.proxy.ProxyFactory.createClass3(ProxyFactory.java:507)
>> >> >         ... 95 more
>> >> > Caused by: java.lang.NoClassDefFoundError:
>> >> >
>> >> org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/spi/Edi
>> >> tableWindowContext
>> >> >         at java.lang.ClassLoader.defineClass1(Native Method)
>> >> >         at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
>> >> >         at sun.reflect.GeneratedMethodAccessor34.invoke(Unknown
>> Source)
>> >> >         at
>> >> >
>> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
>> >> sorImpl.java:43)
>> >> >         at java.lang.reflect.Method.invoke(Method.java:601)
>> >> >         at
>> >> > javassist.util.proxy.FactoryHelper.toClass2(FactoryHelper.java:182)
>> >> >         at
>> >> > javassist.util.proxy.FactoryHelper.toClass(FactoryHelper.java:164)
>> >> >         ... 96 more
>> >> > Caused by: java.lang.ClassNotFoundException:
>> >> >
>> >> org.apache.myfaces.extensions.cdi.jsf.impl.scope.conversation.spi.Edi
>> >> tableWindowContext
>> >> >         at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
>> >> >         at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
>> >> >         at java.security.AccessController.doPrivileged(Native Method)
>> >> >         at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
>> >> >         at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
>> >> >         at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
>> >> >         ... 103 more
>> >> >
>> >> >
>> >> > -----Ursprüngliche Nachricht-----
>> >> > Von: Romain Manni-Bucau [mailto:[email protected]]
>> >> > Gesendet: Freitag, 4. Januar 2013 15:57
>> >> > An: [email protected]
>> >> > Betreff: Re: AW: Passivation capable CDI beans replication across
>> >> > cluster does not work
>> >> >
>> >> > this issue should be fixed on trunk + it should work without the
>> >> > wrapper property now
>> >> >
>> >> > Romain Manni-Bucau
>> >> > Twitter: @rmannibucau
>> >> > Blog: http://rmannibucau.wordpress.com/
>> >> > LinkedIn: http://fr.linkedin.com/in/rmannibucau
>> >> > Github: https://github.com/rmannibucau
>> >> >
>> >> >
>> >> >
>> >> > 2013/1/4  <[email protected]>:
>> >> > > Just tested with snapshot 1.5.2-20130104.041348-22:
>> >> > > -Dtomee.session-context.wrapper=http only - no effect both
>> >> > > -Dtomee.session-context.wrapper=http and
>> >> > > -Dopenejb.session-context=http
>> >> > - got exception:
>> >> > >
>> >> > > java.lang.ClassCastException: java.lang.String cannot be cast to
>> >> > javax.enterprise.context.spi.Contextual
>> >> > >
>> >> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession.key
>> >> > (Se
>> >> > ssionContextBackedByHttpSession.java:62)
>> >> > >
>> >> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession.acc
>> >> > ess
>> >> > $000(SessionContextBackedByHttpSession.java:21)
>> >> > >
>> >> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$Htt
>> >> > pSe
>> >> > ssionMap.get(SessionContextBackedByHttpSession.java:223)
>> >> > >
>> >> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$Htt
>> >> > pSe
>> >> > ssionMap.putIfAbsent(SessionContextBackedByHttpSession.java:249)
>> >> > >
>> >> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$Htt
>> >> > pSe
>> >> > ssionMap.putIfAbsent(SessionContextBackedByHttpSession.java:164)
>> >> > >
>> >> > org.apache.webbeans.context.AbstractContext.createContextualBag(Abs
>> >> > tra
>> >> > ctContext.java:82)
>> >> > >
>> >> > org.apache.webbeans.context.AbstractContext.initContextualBag(Abstr
>> >> > act
>> >> > Context.java:72)
>> >> > >
>> >> > org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.in
>> >> > iti
>> >> > ateBeanBag(NormalScopedBeanInterceptorHandler.java:73)
>> >> > >
>> >> > org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.<i
>> >> > nit
>> >> > >(NormalScopedBeanInterceptorHandler.java:62)
>> >> > >
>> >> > org.apache.webbeans.proxy.ProxyFactory.createInterceptorHandler(Pro
>> >> > xyF
>> >> > actory.java:282)
>> >> > >
>> >> > org.apache.webbeans.proxy.ProxyFactory.createNormalScopedBeanProxy(
>> >> > Pro
>> >> > xyFactory.java:225)
>> >> > >
>> >> > org.apache.webbeans.container.BeanManagerImpl.getReference(BeanMana
>> >> > ger
>> >> > Impl.java:850)
>> >> > >
>> >> > org.apache.webbeans.container.InjectableBeanManager.getReference(In
>> >> > jec
>> >> > tableBeanManager.java:135)
>> >> > >
>> >> > org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProv
>> >> > ide
>> >> > r.getReference(BeanManagerProvider.java:216)
>> >> > >
>> >> > org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProv
>> >> > ide
>> >> > r.getContextualReference(BeanManagerProvider.java:176)
>> >> > >
>> >> > org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLife
>> >> > cyc
>> >> > leWrapper.broadcastBeforeFacesRequestEvent(CodiLifecycleWrapper.jav
>> >> > a:1
>> >> > 57)
>> >> > >
>> >> > org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLife
>> >> > cyc
>> >> > leWrapper.execute(CodiLifecycleWrapper.java:81)
>> >> > >
>> >> > > javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
>> >> > >
>> >> > > -----Ursprüngliche Nachricht-----
>> >> > > Von: Romain Manni-Bucau [mailto:[email protected]]
>> >> > > Gesendet: Freitag, 4. Januar 2013 14:00
>> >> > > An: [email protected]
>> >> > > Betreff: Re: AW: Passivation capable CDI beans replication across
>> >> > > cluster does not work
>> >> > >
>> >> > > did you try adding:
>> >> > >
>> >> > > -Dtomee.session-context.wrapper=http?
>> >> > >
>> >> > > Romain Manni-Bucau
>> >> > > Twitter: @rmannibucau
>> >> > > Blog: http://rmannibucau.wordpress.com/
>> >> > > LinkedIn: http://fr.linkedin.com/in/rmannibucau
>> >> > > Github: https://github.com/rmannibucau
>> >> > >
>> >> > >
>> >> > >
>> >> > > 2013/1/4  <[email protected]>:
>> >> > >> But Apache CODI uses session to save its Conversation and Window
>> >> > >> Scopes
>> >> > (and I can see relevant attributes in session of first node which
>> >> > are not replicated to second node).
>> >> > >> Furthermore CODI scopes are replicated in another application
>> >> > >> servers
>> >> > which uses same technology stack(like IBM Websphere 8).
>> >> > >>
>> >> > >> -----Ursprüngliche Nachricht-----
>> >> > >> Von: Romain Manni-Bucau [mailto:[email protected]]
>> >> > >> Gesendet: Donnerstag, 3. Januar 2013 21:41
>> >> > >> An: [email protected]
>> >> > >> Betreff: Re: AW: Passivation capable CDI beans replication
>> >> > >> across cluster does not work
>> >> > >>
>> >> > >> Only the sessionscoped beans are replicated through tomcat
>> >> > session...other scoped are not (depend on the impl which probably
>> >> > doesnt use the session to store instances) Le 3 janv. 2013 19:49, <
>> >> > [email protected]> a écrit :
>> >> > >>
>> >> > >>> Hi,
>> >> > >>>
>> >> > >>> I have just uploaded test project reproducing the problem:
>> >> > >>> https://github.com/eiskonzept/tomee/
>> >> > >>> I have not reproduced exception, but WindowScoped beans are not
>> >> > >>> replicated(without exception)
>> >> > >>>
>> >> > >>> To reproduce the problem:
>> >> > >>> 1. Start two tomee instances:
>> >> > >>>         mvn clean package tomee:start -P node1
>> >> > >>>         mvn clean package tomee:start -P node2 2. Open
>> >> > >>> index.xhtml in test application context:
>> >> > >>>         http://localhost:8080/tomee_replication-1.0/index.xhtml
>> >> > >>> 3. Check created session in manager application of first node:
>> >> > >>>         http://localhost:8080/manager/html/sessions
>> >> > >>>
>> >> > >>>         There is parameter with something like this in its name:
>> >> > >>>
>> >> >
>> >>
>> "org.apache.myfaces.extensions.cdi.jsf.impl.scope.conversation.EditableWindowContextManagerProxy"
>> >> > >>> 4. Check replicated session in manager application of second
>> node:
>> >> > >>>         http://localhost:8081/manager/html/sessions
>> >> > >>>
>> >> > >>>         There is no such parameter.
>> >> > >>>
>> >> > >>>
>> >> > >>>
>> >> > >>> -----Ursprüngliche Nachricht-----
>> >> > >>> Von: Romain Manni-Bucau [mailto:[email protected]]
>> >> > >>> Gesendet: Donnerstag, 3. Januar 2013 15:38
>> >> > >>> An: [email protected]
>> >> > >>> Betreff: Re: Passivation capable CDI beans replication across
>> >> > >>> cluster does not work
>> >> > >>>
>> >> > >>> Hi,
>> >> > >>>
>> >> > >>> is it possible for you to share a project reproducing it?
>> >> > >>>
>> >> > >>> the best would be a maven project with the tomee maven plugin
>> >> > >>> configured
>> >> > >>>
>> >> > >>> about failoverservice it is off by default and can be
>> >> > >>> configured on trunk (
>> >> > >>> https://issues.apache.org/jira/browse/TOMEE-698)
>> >> > >>>
>> >> > >>> Romain Manni-Bucau
>> >> > >>> Twitter: @rmannibucau
>> >> > >>> Blog: http://rmannibucau.wordpress.com/
>> >> > >>> LinkedIn: http://fr.linkedin.com/in/rmannibucau
>> >> > >>> Github: https://github.com/rmannibucau
>> >> > >>>
>> >> > >>>
>> >> > >>>
>> >> > >>> 2013/1/2  <[email protected]>:
>> >> > >>> > cannot load the class
>> >> > >>>
>> >> >
>> >>
>> >
>> >
>>
>
>

Reply via email to