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 >> >> > >>> >> >> > >> >> >> > >> > >> > >
