You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomee.apache.org by dm...@eiskonzept.com on 2013/02/07 11:54:48 UTC
AW: AW: Passivation capable CDI beans replication across cluster
does not work
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/EditableWindowContext
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(DelegatingMethodAccessorImpl.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:1780)
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:1771)
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:1771)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
at java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
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 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
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:1771)
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:1771)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
at java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
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 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
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:1771)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
at java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
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 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
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:1771)
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:1771)
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:1771)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
at org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.readExternal(DeltaRequest.java:378)
at org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaRequest.java:268)
at org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest(DeltaManager.java:604)
at org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(DeltaManager.java:1346)
at org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaManager.java:1293)
at org.apache.catalina.ha.session.DeltaManager.messageDataReceived(DeltaManager.java:1014)
at org.apache.catalina.ha.session.ClusterSessionListener.messageReceived(ClusterSessionListener.java:92)
at org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:924)
at org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:905)
at org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupChannel.java:278)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
at org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.messageReceived(TcpFailureDetector.java:114)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
at org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived(ChannelCoordinator.java:253)
at org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceived(ReceiverBase.java:287)
at org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:212)
at org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.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/EditableWindowContext
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/EditableWindowContext
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(DelegatingMethodAccessorImpl.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.EditableWindowContext
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:rmannibucau@gmail.com]
Gesendet: Freitag, 4. Januar 2013 15:57
An: users@openejb.apache.org
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 <dm...@eiskonzept.com>:
> 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(SessionContextBackedByHttpSession.java:62)
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession.access$000(SessionContextBackedByHttpSession.java:21)
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSessionMap.get(SessionContextBackedByHttpSession.java:223)
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSessionMap.putIfAbsent(SessionContextBackedByHttpSession.java:249)
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSessionMap.putIfAbsent(SessionContextBackedByHttpSession.java:164)
> org.apache.webbeans.context.AbstractContext.createContextualBag(AbstractContext.java:82)
> org.apache.webbeans.context.AbstractContext.initContextualBag(AbstractContext.java:72)
> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.initiateBeanBag(NormalScopedBeanInterceptorHandler.java:73)
> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.<init>(NormalScopedBeanInterceptorHandler.java:62)
> org.apache.webbeans.proxy.ProxyFactory.createInterceptorHandler(ProxyFactory.java:282)
> org.apache.webbeans.proxy.ProxyFactory.createNormalScopedBeanProxy(ProxyFactory.java:225)
> org.apache.webbeans.container.BeanManagerImpl.getReference(BeanManagerImpl.java:850)
> org.apache.webbeans.container.InjectableBeanManager.getReference(InjectableBeanManager.java:135)
> org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvider.getReference(BeanManagerProvider.java:216)
> org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvider.getContextualReference(BeanManagerProvider.java:176)
> org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecycleWrapper.broadcastBeforeFacesRequestEvent(CodiLifecycleWrapper.java:157)
> org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecycleWrapper.execute(CodiLifecycleWrapper.java:81)
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
>
> -----Ursprüngliche Nachricht-----
> Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
> Gesendet: Freitag, 4. Januar 2013 14:00
> An: users@openejb.apache.org
> 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 <dm...@eiskonzept.com>:
>> 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:rmannibucau@gmail.com]
>> Gesendet: Donnerstag, 3. Januar 2013 21:41
>> An: users@openejb.apache.org
>> 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, <dm...@eiskonzept.com> 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:rmannibucau@gmail.com]
>>> Gesendet: Donnerstag, 3. Januar 2013 15:38
>>> An: users@openejb.apache.org
>>> 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 <dm...@eiskonzept.com>:
>>> > cannot load the class
>>>
Re: AW: Passivation capable CDI beans replication across cluster does
not work
Posted by Romain Manni-Bucau <rm...@gmail.com>.
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 <rm...@gmail.com>
> 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 <dm...@eiskonzept.com>
>
> 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:rmannibucau@gmail.com]
>> Gesendet: Donnerstag, 7. Februar 2013 15:07
>> An: users@tomee.apache.org
>> 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 <rm...@gmail.com>
>>
>> > 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 <dm...@eiskonzept.com>
>> >
>> > 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:rmannibucau@gmail.com]
>> >> Gesendet: Donnerstag, 7. Februar 2013 11:59
>> >> An: users@tomee.apache.org
>> >> 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 <dm...@eiskonzept.com>
>> >>
>> >> > 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:rmannibucau@gmail.com]
>> >> > Gesendet: Freitag, 4. Januar 2013 15:57
>> >> > An: users@openejb.apache.org
>> >> > 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 <dm...@eiskonzept.com>:
>> >> > > 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:rmannibucau@gmail.com]
>> >> > > Gesendet: Freitag, 4. Januar 2013 14:00
>> >> > > An: users@openejb.apache.org
>> >> > > 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 <dm...@eiskonzept.com>:
>> >> > >> 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:rmannibucau@gmail.com]
>> >> > >> Gesendet: Donnerstag, 3. Januar 2013 21:41
>> >> > >> An: users@openejb.apache.org
>> >> > >> 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, <
>> >> > dmitry.volkov@eiskonzept.com> 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:rmannibucau@gmail.com]
>> >> > >>> Gesendet: Donnerstag, 3. Januar 2013 15:38
>> >> > >>> An: users@openejb.apache.org
>> >> > >>> 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 <dm...@eiskonzept.com>:
>> >> > >>> > cannot load the class
>> >> > >>>
>> >> >
>> >>
>> >
>> >
>>
>
>
AW: AW: Passivation capable CDI beans replication across cluster
does not work
Posted by dm...@eiskonzept.com.
Yes, first stop current node then push save button.
Just tested with last snapshot and following cluster config:
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
got same exception. Additionally got exception after TomEE had tried to replicate session:
SEVERE: Manager [/hello-myfaces-codi-jsf20-example-1.0.5]: Unable to receive message through TCP channel
java.lang.RuntimeException: by java.lang.NoClassDefFoundError: org/apache/myfaces/extensions/cdi/jsf/impl/scope/conversation/spi/EditableWindowContext
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(DelegatingMethodAccessorImpl.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:1780)
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:1771)
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:1771)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
at java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
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 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
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:1771)
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:1771)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
at java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
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 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
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:1771)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
at java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
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 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
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:1771)
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:1771)
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:1771)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
at org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.readExternal(DeltaRequest.java:378)
at org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaRequest.java:268)
at org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest(DeltaManager.java:604)
at org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(DeltaManager.java:1346)
at org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaManager.java:1293)
at org.apache.catalina.ha.session.DeltaManager.messageDataReceived(DeltaManager.java:1014)
at org.apache.catalina.ha.session.ClusterSessionListener.messageReceived(ClusterSessionListener.java:92)
at org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:924)
at org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:905)
at org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupChannel.java:278)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
at org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.messageReceived(TcpFailureDetector.java:114)
at org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
at org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived(ChannelCoordinator.java:253)
at org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceived(ReceiverBase.java:287)
at org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:212)
at org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.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/EditableWindowContext
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/EditableWindowContext
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
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 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.EditableWindowContext
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)
... 104 more
-----Ursprüngliche Nachricht-----
Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
Gesendet: Samstag, 9. Februar 2013 20:27
An: users@tomee.apache.org
Betreff: Re: AW: Passivation capable CDI beans replication across cluster does not work
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 <dm...@eiskonzept.com>
> 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:rmannibucau@gmail.com]
> Gesendet: Donnerstag, 7. Februar 2013 15:07
> An: users@tomee.apache.org
> 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 <rm...@gmail.com>
>
> > 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.co
> > m/
> > >
> > *LinkedIn: **http://fr.linkedin.com/in/rmannibucau*
> > *Github: https://github.com/rmannibucau*
> >
> >
> >
> > 2013/2/7 <dm...@eiskonzept.com>
> >
> > 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:rmannibucau@gmail.com]
> >> Gesendet: Donnerstag, 7. Februar 2013 11:59
> >> An: users@tomee.apache.org
> >> 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 <dm...@eiskonzept.com>
> >>
> >> > 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/E
> >> di
> >> 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.ja
> >> va
> >> :85)
> >> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >> > at
> >> >
> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
> >> java:57)
> >> > at
> >> >
> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcc
> >> es
> >> sorImpl.java:43)
> >> > at java.lang.reflect.Method.invoke(Method.java:601)
> >> > at
> >> >
> java.io.ObjectStreamClass.invokeReadResolve(ObjectStreamClass.java:109
> 1)
> >> > at
> >> >
> >> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java
> >> :1
> >> 780)
> >> > at
> >> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> >> > at
> >> >
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:196
> 4)
> >> > 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:196
> 4)
> >> > 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(DelegatingMethodAcc
> >> es
> >> 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:196
> 4)
> >> > 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:196
> 4)
> >> > 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(DelegatingMethodAcc
> >> es
> >> 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:196
> 4)
> >> > 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(DelegatingMethodAcc
> >> es
> >> 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:196
> 4)
> >> > 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:196
> 4)
> >> > 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:196
> 4)
> >> > 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.readExter
> >> na
> >> l(DeltaRequest.java:378)
> >> > at
> >> >
> >> org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaReque
> >> st
> >> .java:268)
> >> > at
> >> >
> >> org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest
> >> (D
> >> eltaManager.java:604)
> >> > at
> >> >
> >> org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(Del
> >> ta
> >> Manager.java:1346)
> >> > at
> >> >
> >> org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaMa
> >> na
> >> ger.java:1293)
> >> > at
> >> >
> >> org.apache.catalina.ha.session.DeltaManager.messageDataReceived(Del
> >> ta
> >> Manager.java:1014)
> >> > at
> >> >
> >> org.apache.catalina.ha.session.ClusterSessionListener.messageReceiv
> >> ed
> >> (ClusterSessionListener.java:92)
> >> > at
> >> >
> >> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleT
> >> cp
> >> Cluster.java:924)
> >> > at
> >> >
> >> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleT
> >> cp
> >> Cluster.java:905)
> >> > at
> >> >
> >> org.apache.catalina.tribes.group.GroupChannel.messageReceived(Group
> >> Ch
> >> annel.java:278)
> >> > at
> >> >
> >> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageRece
> >> iv
> >> ed(ChannelInterceptorBase.java:84)
> >> > at
> >> >
> >> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageRece
> >> iv
> >> ed(ChannelInterceptorBase.java:84)
> >> > at
> >> >
> >> org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.me
> >> ss
> >> ageReceived(TcpFailureDetector.java:114)
> >> > at
> >> >
> >> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageRece
> >> iv
> >> ed(ChannelInterceptorBase.java:84)
> >> > at
> >> >
> >> org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived
> >> (C
> >> hannelCoordinator.java:253)
> >> > at
> >> >
> >> org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceiv
> >> ed
> >> (ReceiverBase.java:287)
> >> > at
> >> >
> >> org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainCh
> >> an
> >> nel(NioReplicationTask.java:212)
> >> > at
> >> >
> >> org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(Nio
> >> Re
> >> plicationTask.java:101)
> >> > at
> >> >
> >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.
> >> java:1110)
> >> > at
> >> >
> >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecut
> >> or
> >> .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/E
> >> di
> >> 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/E
> >> di
> >> 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(DelegatingMethodAcc
> >> es
> >> 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.E
> >> di
> >> 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:rmannibucau@gmail.com]
> >> > Gesendet: Freitag, 4. Januar 2013 15:57
> >> > An: users@openejb.apache.org
> >> > 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 <dm...@eiskonzept.com>:
> >> > > 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.k
> >> > ey
> >> > (Se
> >> > ssionContextBackedByHttpSession.java:62)
> >> > >
> >> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession.a
> >> > cc
> >> > ess
> >> > $000(SessionContextBackedByHttpSession.java:21)
> >> > >
> >> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$H
> >> > tt
> >> > pSe
> >> > ssionMap.get(SessionContextBackedByHttpSession.java:223)
> >> > >
> >> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$H
> >> > tt
> >> > pSe
> >> > ssionMap.putIfAbsent(SessionContextBackedByHttpSession.java:249)
> >> > >
> >> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$H
> >> > tt
> >> > pSe
> >> > ssionMap.putIfAbsent(SessionContextBackedByHttpSession.java:164)
> >> > >
> >> > org.apache.webbeans.context.AbstractContext.createContextualBag(A
> >> > bs
> >> > tra
> >> > ctContext.java:82)
> >> > >
> >> > org.apache.webbeans.context.AbstractContext.initContextualBag(Abs
> >> > tr
> >> > 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(P
> >> > ro
> >> > xyF
> >> > actory.java:282)
> >> > >
> >> > org.apache.webbeans.proxy.ProxyFactory.createNormalScopedBeanProx
> >> > y(
> >> > Pro
> >> > xyFactory.java:225)
> >> > >
> >> > org.apache.webbeans.container.BeanManagerImpl.getReference(BeanMa
> >> > na
> >> > ger
> >> > Impl.java:850)
> >> > >
> >> > org.apache.webbeans.container.InjectableBeanManager.getReference(
> >> > In
> >> > jec
> >> > tableBeanManager.java:135)
> >> > >
> >> > org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerPr
> >> > ov
> >> > ide
> >> > r.getReference(BeanManagerProvider.java:216)
> >> > >
> >> > org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerPr
> >> > ov
> >> > ide
> >> > r.getContextualReference(BeanManagerProvider.java:176)
> >> > >
> >> > org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLi
> >> > fe
> >> > cyc
> >> > leWrapper.broadcastBeforeFacesRequestEvent(CodiLifecycleWrapper.j
> >> > av
> >> > a:1
> >> > 57)
> >> > >
> >> > org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLi
> >> > fe
> >> > cyc
> >> > leWrapper.execute(CodiLifecycleWrapper.java:81)
> >> > >
> >> > > javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
> >> > >
> >> > > -----Ursprüngliche Nachricht-----
> >> > > Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
> >> > > Gesendet: Freitag, 4. Januar 2013 14:00
> >> > > An: users@openejb.apache.org
> >> > > 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 <dm...@eiskonzept.com>:
> >> > >> 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:rmannibucau@gmail.com]
> >> > >> Gesendet: Donnerstag, 3. Januar 2013 21:41
> >> > >> An: users@openejb.apache.org
> >> > >> 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,
> >> > < dmitry.volkov@eiskonzept.com> 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:rmannibucau@gmail.com]
> >> > >>> Gesendet: Donnerstag, 3. Januar 2013 15:38
> >> > >>> An: users@openejb.apache.org
> >> > >>> 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 <dm...@eiskonzept.com>:
> >> > >>> > cannot load the class
> >> > >>>
> >> >
> >>
> >
> >
>
Re: AW: Passivation capable CDI beans replication across cluster does
not work
Posted by Romain Manni-Bucau <rm...@gmail.com>.
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 <dm...@eiskonzept.com>
> 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:rmannibucau@gmail.com]
> Gesendet: Donnerstag, 7. Februar 2013 15:07
> An: users@tomee.apache.org
> 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 <rm...@gmail.com>
>
> > 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 <dm...@eiskonzept.com>
> >
> > 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:rmannibucau@gmail.com]
> >> Gesendet: Donnerstag, 7. Februar 2013 11:59
> >> An: users@tomee.apache.org
> >> 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 <dm...@eiskonzept.com>
> >>
> >> > 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:rmannibucau@gmail.com]
> >> > Gesendet: Freitag, 4. Januar 2013 15:57
> >> > An: users@openejb.apache.org
> >> > 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 <dm...@eiskonzept.com>:
> >> > > 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:rmannibucau@gmail.com]
> >> > > Gesendet: Freitag, 4. Januar 2013 14:00
> >> > > An: users@openejb.apache.org
> >> > > 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 <dm...@eiskonzept.com>:
> >> > >> 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:rmannibucau@gmail.com]
> >> > >> Gesendet: Donnerstag, 3. Januar 2013 21:41
> >> > >> An: users@openejb.apache.org
> >> > >> 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, <
> >> > dmitry.volkov@eiskonzept.com> 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:rmannibucau@gmail.com]
> >> > >>> Gesendet: Donnerstag, 3. Januar 2013 15:38
> >> > >>> An: users@openejb.apache.org
> >> > >>> 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 <dm...@eiskonzept.com>:
> >> > >>> > cannot load the class
> >> > >>>
> >> >
> >>
> >
> >
>
AW: AW: Passivation capable CDI beans replication across cluster
does not work
Posted by dm...@eiskonzept.com.
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:rmannibucau@gmail.com]
Gesendet: Donnerstag, 7. Februar 2013 15:07
An: users@tomee.apache.org
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 <rm...@gmail.com>
> 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 <dm...@eiskonzept.com>
>
> 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:rmannibucau@gmail.com]
>> Gesendet: Donnerstag, 7. Februar 2013 11:59
>> An: users@tomee.apache.org
>> 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 <dm...@eiskonzept.com>
>>
>> > 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:rmannibucau@gmail.com]
>> > Gesendet: Freitag, 4. Januar 2013 15:57
>> > An: users@openejb.apache.org
>> > 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 <dm...@eiskonzept.com>:
>> > > 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:rmannibucau@gmail.com]
>> > > Gesendet: Freitag, 4. Januar 2013 14:00
>> > > An: users@openejb.apache.org
>> > > 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 <dm...@eiskonzept.com>:
>> > >> 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:rmannibucau@gmail.com]
>> > >> Gesendet: Donnerstag, 3. Januar 2013 21:41
>> > >> An: users@openejb.apache.org
>> > >> 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, <
>> > dmitry.volkov@eiskonzept.com> 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:rmannibucau@gmail.com]
>> > >>> Gesendet: Donnerstag, 3. Januar 2013 15:38
>> > >>> An: users@openejb.apache.org
>> > >>> 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 <dm...@eiskonzept.com>:
>> > >>> > cannot load the class
>> > >>>
>> >
>>
>
>
AW: AW: Passivation capable CDI beans replication across cluster
does not work
Posted by dm...@eiskonzept.com.
That was the issue. I become an exception in my application, but can't isolate it in test app. CDI beans in real application are way complexer and something, somewhere is not working.
I will try to reproduce it in the test app. I would appreciate any help.
-----Ursprüngliche Nachricht-----
Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
Gesendet: Donnerstag, 7. Februar 2013 15:07
An: users@tomee.apache.org
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 <rm...@gmail.com>
> 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 <dm...@eiskonzept.com>
>
> 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:rmannibucau@gmail.com]
>> Gesendet: Donnerstag, 7. Februar 2013 11:59
>> An: users@tomee.apache.org
>> 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 <dm...@eiskonzept.com>
>>
>> > 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:rmannibucau@gmail.com]
>> > Gesendet: Freitag, 4. Januar 2013 15:57
>> > An: users@openejb.apache.org
>> > 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 <dm...@eiskonzept.com>:
>> > > 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:rmannibucau@gmail.com]
>> > > Gesendet: Freitag, 4. Januar 2013 14:00
>> > > An: users@openejb.apache.org
>> > > 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 <dm...@eiskonzept.com>:
>> > >> 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:rmannibucau@gmail.com]
>> > >> Gesendet: Donnerstag, 3. Januar 2013 21:41
>> > >> An: users@openejb.apache.org
>> > >> 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, <
>> > dmitry.volkov@eiskonzept.com> 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:rmannibucau@gmail.com]
>> > >>> Gesendet: Donnerstag, 3. Januar 2013 15:38
>> > >>> An: users@openejb.apache.org
>> > >>> 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 <dm...@eiskonzept.com>:
>> > >>> > cannot load the class
>> > >>>
>> >
>>
>
>
Re: AW: Passivation capable CDI beans replication across cluster does
not work
Posted by Romain Manni-Bucau <rm...@gmail.com>.
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 <rm...@gmail.com>
> 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 <dm...@eiskonzept.com>
>
> 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:rmannibucau@gmail.com]
>> Gesendet: Donnerstag, 7. Februar 2013 11:59
>> An: users@tomee.apache.org
>> 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 <dm...@eiskonzept.com>
>>
>> > 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/EditableWindowContext
>> > 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(DelegatingMethodAccessorImpl.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:1780)
>> > 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:1771)
>> > 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:1771)
>> > at
>> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> > at
>> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
>> > at
>> >
>> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
>> > 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
>> > java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
>> > at
>> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
>> > at
>> >
>> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
>> > 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:1771)
>> > 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:1771)
>> > at
>> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> > at
>> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
>> > at
>> >
>> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
>> > 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
>> > java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
>> > at
>> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
>> > at
>> >
>> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
>> > 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:1771)
>> > at
>> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> > at
>> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
>> > at
>> >
>> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
>> > 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
>> > java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
>> > at
>> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
>> > at
>> >
>> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
>> > 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:1771)
>> > 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:1771)
>> > 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:1771)
>> > at
>> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
>> > at
>> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
>> > at
>> >
>> org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.readExternal(DeltaRequest.java:378)
>> > at
>> >
>> org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaRequest.java:268)
>> > at
>> >
>> org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest(DeltaManager.java:604)
>> > at
>> >
>> org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(DeltaManager.java:1346)
>> > at
>> >
>> org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaManager.java:1293)
>> > at
>> >
>> org.apache.catalina.ha.session.DeltaManager.messageDataReceived(DeltaManager.java:1014)
>> > at
>> >
>> org.apache.catalina.ha.session.ClusterSessionListener.messageReceived(ClusterSessionListener.java:92)
>> > at
>> >
>> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:924)
>> > at
>> >
>> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:905)
>> > at
>> >
>> org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupChannel.java:278)
>> > at
>> >
>> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
>> > at
>> >
>> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
>> > at
>> >
>> org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.messageReceived(TcpFailureDetector.java:114)
>> > at
>> >
>> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
>> > at
>> >
>> org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived(ChannelCoordinator.java:253)
>> > at
>> >
>> org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceived(ReceiverBase.java:287)
>> > at
>> >
>> org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:212)
>> > at
>> >
>> org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.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/EditableWindowContext
>> > 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/EditableWindowContext
>> > 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(DelegatingMethodAccessorImpl.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.EditableWindowContext
>> > 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:rmannibucau@gmail.com]
>> > Gesendet: Freitag, 4. Januar 2013 15:57
>> > An: users@openejb.apache.org
>> > 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 <dm...@eiskonzept.com>:
>> > > 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.access
>> > $000(SessionContextBackedByHttpSession.java:21)
>> > >
>> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSe
>> > ssionMap.get(SessionContextBackedByHttpSession.java:223)
>> > >
>> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSe
>> > ssionMap.putIfAbsent(SessionContextBackedByHttpSession.java:249)
>> > >
>> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSe
>> > ssionMap.putIfAbsent(SessionContextBackedByHttpSession.java:164)
>> > >
>> > org.apache.webbeans.context.AbstractContext.createContextualBag(Abstra
>> > ctContext.java:82)
>> > >
>> > org.apache.webbeans.context.AbstractContext.initContextualBag(Abstract
>> > Context.java:72)
>> > >
>> > org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.initi
>> > ateBeanBag(NormalScopedBeanInterceptorHandler.java:73)
>> > >
>> > org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.<init
>> > >(NormalScopedBeanInterceptorHandler.java:62)
>> > >
>> > org.apache.webbeans.proxy.ProxyFactory.createInterceptorHandler(ProxyF
>> > actory.java:282)
>> > >
>> > org.apache.webbeans.proxy.ProxyFactory.createNormalScopedBeanProxy(Pro
>> > xyFactory.java:225)
>> > >
>> > org.apache.webbeans.container.BeanManagerImpl.getReference(BeanManager
>> > Impl.java:850)
>> > >
>> > org.apache.webbeans.container.InjectableBeanManager.getReference(Injec
>> > tableBeanManager.java:135)
>> > >
>> > org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvide
>> > r.getReference(BeanManagerProvider.java:216)
>> > >
>> > org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvide
>> > r.getContextualReference(BeanManagerProvider.java:176)
>> > >
>> > org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecyc
>> > leWrapper.broadcastBeforeFacesRequestEvent(CodiLifecycleWrapper.java:1
>> > 57)
>> > >
>> > org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecyc
>> > leWrapper.execute(CodiLifecycleWrapper.java:81)
>> > >
>> > > javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
>> > >
>> > > -----Ursprüngliche Nachricht-----
>> > > Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
>> > > Gesendet: Freitag, 4. Januar 2013 14:00
>> > > An: users@openejb.apache.org
>> > > 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 <dm...@eiskonzept.com>:
>> > >> 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:rmannibucau@gmail.com]
>> > >> Gesendet: Donnerstag, 3. Januar 2013 21:41
>> > >> An: users@openejb.apache.org
>> > >> 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, <
>> > dmitry.volkov@eiskonzept.com> 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:rmannibucau@gmail.com]
>> > >>> Gesendet: Donnerstag, 3. Januar 2013 15:38
>> > >>> An: users@openejb.apache.org
>> > >>> 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 <dm...@eiskonzept.com>:
>> > >>> > cannot load the class
>> > >>>
>> >
>>
>
>
Re: AW: Passivation capable CDI beans replication across cluster does
not work
Posted by Romain Manni-Bucau <rm...@gmail.com>.
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 <dm...@eiskonzept.com>
> 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:rmannibucau@gmail.com]
> Gesendet: Donnerstag, 7. Februar 2013 11:59
> An: users@tomee.apache.org
> 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 <dm...@eiskonzept.com>
>
> > 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/EditableWindowContext
> > 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(DelegatingMethodAccessorImpl.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:1780)
> > 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:1771)
> > 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:1771)
> > at
> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> > at
> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> > at
> >
> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
> > 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
> > java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
> > at
> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
> > at
> > java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
> > 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:1771)
> > 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:1771)
> > at
> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> > at
> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> > at
> >
> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
> > 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
> > java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
> > at
> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
> > at
> > java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
> > 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:1771)
> > at
> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> > at
> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> > at
> >
> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
> > 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
> > java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
> > at
> > java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
> > at
> > java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
> > 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:1771)
> > 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:1771)
> > 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:1771)
> > at
> > java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> > at
> java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> > at
> >
> org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.readExternal(DeltaRequest.java:378)
> > at
> >
> org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaRequest.java:268)
> > at
> >
> org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest(DeltaManager.java:604)
> > at
> >
> org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(DeltaManager.java:1346)
> > at
> >
> org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaManager.java:1293)
> > at
> >
> org.apache.catalina.ha.session.DeltaManager.messageDataReceived(DeltaManager.java:1014)
> > at
> >
> org.apache.catalina.ha.session.ClusterSessionListener.messageReceived(ClusterSessionListener.java:92)
> > at
> >
> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:924)
> > at
> >
> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:905)
> > at
> >
> org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupChannel.java:278)
> > at
> >
> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
> > at
> >
> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
> > at
> >
> org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.messageReceived(TcpFailureDetector.java:114)
> > at
> >
> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
> > at
> >
> org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived(ChannelCoordinator.java:253)
> > at
> >
> org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceived(ReceiverBase.java:287)
> > at
> >
> org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:212)
> > at
> >
> org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.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/EditableWindowContext
> > 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/EditableWindowContext
> > 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(DelegatingMethodAccessorImpl.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.EditableWindowContext
> > 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:rmannibucau@gmail.com]
> > Gesendet: Freitag, 4. Januar 2013 15:57
> > An: users@openejb.apache.org
> > 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 <dm...@eiskonzept.com>:
> > > 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.access
> > $000(SessionContextBackedByHttpSession.java:21)
> > >
> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSe
> > ssionMap.get(SessionContextBackedByHttpSession.java:223)
> > >
> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSe
> > ssionMap.putIfAbsent(SessionContextBackedByHttpSession.java:249)
> > >
> > org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSe
> > ssionMap.putIfAbsent(SessionContextBackedByHttpSession.java:164)
> > >
> > org.apache.webbeans.context.AbstractContext.createContextualBag(Abstra
> > ctContext.java:82)
> > >
> > org.apache.webbeans.context.AbstractContext.initContextualBag(Abstract
> > Context.java:72)
> > >
> > org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.initi
> > ateBeanBag(NormalScopedBeanInterceptorHandler.java:73)
> > >
> > org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.<init
> > >(NormalScopedBeanInterceptorHandler.java:62)
> > >
> > org.apache.webbeans.proxy.ProxyFactory.createInterceptorHandler(ProxyF
> > actory.java:282)
> > >
> > org.apache.webbeans.proxy.ProxyFactory.createNormalScopedBeanProxy(Pro
> > xyFactory.java:225)
> > >
> > org.apache.webbeans.container.BeanManagerImpl.getReference(BeanManager
> > Impl.java:850)
> > >
> > org.apache.webbeans.container.InjectableBeanManager.getReference(Injec
> > tableBeanManager.java:135)
> > >
> > org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvide
> > r.getReference(BeanManagerProvider.java:216)
> > >
> > org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvide
> > r.getContextualReference(BeanManagerProvider.java:176)
> > >
> > org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecyc
> > leWrapper.broadcastBeforeFacesRequestEvent(CodiLifecycleWrapper.java:1
> > 57)
> > >
> > org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecyc
> > leWrapper.execute(CodiLifecycleWrapper.java:81)
> > >
> > > javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
> > >
> > > -----Ursprüngliche Nachricht-----
> > > Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
> > > Gesendet: Freitag, 4. Januar 2013 14:00
> > > An: users@openejb.apache.org
> > > 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 <dm...@eiskonzept.com>:
> > >> 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:rmannibucau@gmail.com]
> > >> Gesendet: Donnerstag, 3. Januar 2013 21:41
> > >> An: users@openejb.apache.org
> > >> 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, <
> > dmitry.volkov@eiskonzept.com> 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:rmannibucau@gmail.com]
> > >>> Gesendet: Donnerstag, 3. Januar 2013 15:38
> > >>> An: users@openejb.apache.org
> > >>> 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 <dm...@eiskonzept.com>:
> > >>> > cannot load the class
> > >>>
> >
>
AW: AW: Passivation capable CDI beans replication across cluster
does not work
Posted by dm...@eiskonzept.com.
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:rmannibucau@gmail.com]
Gesendet: Donnerstag, 7. Februar 2013 11:59
An: users@tomee.apache.org
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 <dm...@eiskonzept.com>
> 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/EditableWindowContext
> 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(DelegatingMethodAccessorImpl.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:1780)
> 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:1771)
> 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:1771)
> at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> at
> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
> 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
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
> 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:1771)
> 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:1771)
> at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> at
> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
> 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
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
> 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:1771)
> at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> at
> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
> 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
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
> 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:1771)
> 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:1771)
> 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:1771)
> at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> at
> org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.readExternal(DeltaRequest.java:378)
> at
> org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaRequest.java:268)
> at
> org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest(DeltaManager.java:604)
> at
> org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(DeltaManager.java:1346)
> at
> org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaManager.java:1293)
> at
> org.apache.catalina.ha.session.DeltaManager.messageDataReceived(DeltaManager.java:1014)
> at
> org.apache.catalina.ha.session.ClusterSessionListener.messageReceived(ClusterSessionListener.java:92)
> at
> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:924)
> at
> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:905)
> at
> org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupChannel.java:278)
> at
> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
> at
> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
> at
> org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.messageReceived(TcpFailureDetector.java:114)
> at
> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
> at
> org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived(ChannelCoordinator.java:253)
> at
> org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceived(ReceiverBase.java:287)
> at
> org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:212)
> at
> org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.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/EditableWindowContext
> 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/EditableWindowContext
> 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(DelegatingMethodAccessorImpl.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.EditableWindowContext
> 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:rmannibucau@gmail.com]
> Gesendet: Freitag, 4. Januar 2013 15:57
> An: users@openejb.apache.org
> 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 <dm...@eiskonzept.com>:
> > 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.access
> $000(SessionContextBackedByHttpSession.java:21)
> >
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSe
> ssionMap.get(SessionContextBackedByHttpSession.java:223)
> >
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSe
> ssionMap.putIfAbsent(SessionContextBackedByHttpSession.java:249)
> >
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSe
> ssionMap.putIfAbsent(SessionContextBackedByHttpSession.java:164)
> >
> org.apache.webbeans.context.AbstractContext.createContextualBag(Abstra
> ctContext.java:82)
> >
> org.apache.webbeans.context.AbstractContext.initContextualBag(Abstract
> Context.java:72)
> >
> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.initi
> ateBeanBag(NormalScopedBeanInterceptorHandler.java:73)
> >
> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.<init
> >(NormalScopedBeanInterceptorHandler.java:62)
> >
> org.apache.webbeans.proxy.ProxyFactory.createInterceptorHandler(ProxyF
> actory.java:282)
> >
> org.apache.webbeans.proxy.ProxyFactory.createNormalScopedBeanProxy(Pro
> xyFactory.java:225)
> >
> org.apache.webbeans.container.BeanManagerImpl.getReference(BeanManager
> Impl.java:850)
> >
> org.apache.webbeans.container.InjectableBeanManager.getReference(Injec
> tableBeanManager.java:135)
> >
> org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvide
> r.getReference(BeanManagerProvider.java:216)
> >
> org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvide
> r.getContextualReference(BeanManagerProvider.java:176)
> >
> org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecyc
> leWrapper.broadcastBeforeFacesRequestEvent(CodiLifecycleWrapper.java:1
> 57)
> >
> org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecyc
> leWrapper.execute(CodiLifecycleWrapper.java:81)
> >
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
> > Gesendet: Freitag, 4. Januar 2013 14:00
> > An: users@openejb.apache.org
> > 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 <dm...@eiskonzept.com>:
> >> 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:rmannibucau@gmail.com]
> >> Gesendet: Donnerstag, 3. Januar 2013 21:41
> >> An: users@openejb.apache.org
> >> 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, <
> dmitry.volkov@eiskonzept.com> 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:rmannibucau@gmail.com]
> >>> Gesendet: Donnerstag, 3. Januar 2013 15:38
> >>> An: users@openejb.apache.org
> >>> 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 <dm...@eiskonzept.com>:
> >>> > cannot load the class
> >>>
>
Re: AW: Passivation capable CDI beans replication across cluster does
not work
Posted by Romain Manni-Bucau <rm...@gmail.com>.
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 <dm...@eiskonzept.com>
> 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/EditableWindowContext
> 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(DelegatingMethodAccessorImpl.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:1780)
> 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:1771)
> 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:1771)
> at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> at
> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
> 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
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
> 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:1771)
> 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:1771)
> at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> at
> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
> 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
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
> 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:1771)
> at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> at
> java.util.concurrent.ConcurrentHashMap.readObject(ConcurrentHashMap.java:1557)
> 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
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1004)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1866)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
> 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:1771)
> 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:1771)
> 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:1771)
> at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
> at
> org.apache.catalina.ha.session.DeltaRequest$AttributeInfo.readExternal(DeltaRequest.java:378)
> at
> org.apache.catalina.ha.session.DeltaRequest.readExternal(DeltaRequest.java:268)
> at
> org.apache.catalina.ha.session.DeltaManager.deserializeDeltaRequest(DeltaManager.java:604)
> at
> org.apache.catalina.ha.session.DeltaManager.handleSESSION_DELTA(DeltaManager.java:1346)
> at
> org.apache.catalina.ha.session.DeltaManager.messageReceived(DeltaManager.java:1293)
> at
> org.apache.catalina.ha.session.DeltaManager.messageDataReceived(DeltaManager.java:1014)
> at
> org.apache.catalina.ha.session.ClusterSessionListener.messageReceived(ClusterSessionListener.java:92)
> at
> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:924)
> at
> org.apache.catalina.ha.tcp.SimpleTcpCluster.messageReceived(SimpleTcpCluster.java:905)
> at
> org.apache.catalina.tribes.group.GroupChannel.messageReceived(GroupChannel.java:278)
> at
> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
> at
> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
> at
> org.apache.catalina.tribes.group.interceptors.TcpFailureDetector.messageReceived(TcpFailureDetector.java:114)
> at
> org.apache.catalina.tribes.group.ChannelInterceptorBase.messageReceived(ChannelInterceptorBase.java:84)
> at
> org.apache.catalina.tribes.group.ChannelCoordinator.messageReceived(ChannelCoordinator.java:253)
> at
> org.apache.catalina.tribes.transport.ReceiverBase.messageDataReceived(ReceiverBase.java:287)
> at
> org.apache.catalina.tribes.transport.nio.NioReplicationTask.drainChannel(NioReplicationTask.java:212)
> at
> org.apache.catalina.tribes.transport.nio.NioReplicationTask.run(NioReplicationTask.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/EditableWindowContext
> 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/EditableWindowContext
> 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(DelegatingMethodAccessorImpl.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.EditableWindowContext
> 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:rmannibucau@gmail.com]
> Gesendet: Freitag, 4. Januar 2013 15:57
> An: users@openejb.apache.org
> 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 <dm...@eiskonzept.com>:
> > 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(SessionContextBackedByHttpSession.java:62)
> >
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession.access$000(SessionContextBackedByHttpSession.java:21)
> >
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSessionMap.get(SessionContextBackedByHttpSession.java:223)
> >
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSessionMap.putIfAbsent(SessionContextBackedByHttpSession.java:249)
> >
> org.apache.tomee.catalina.cdi.SessionContextBackedByHttpSession$HttpSessionMap.putIfAbsent(SessionContextBackedByHttpSession.java:164)
> >
> org.apache.webbeans.context.AbstractContext.createContextualBag(AbstractContext.java:82)
> >
> org.apache.webbeans.context.AbstractContext.initContextualBag(AbstractContext.java:72)
> >
> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.initiateBeanBag(NormalScopedBeanInterceptorHandler.java:73)
> >
> org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.<init>(NormalScopedBeanInterceptorHandler.java:62)
> >
> org.apache.webbeans.proxy.ProxyFactory.createInterceptorHandler(ProxyFactory.java:282)
> >
> org.apache.webbeans.proxy.ProxyFactory.createNormalScopedBeanProxy(ProxyFactory.java:225)
> >
> org.apache.webbeans.container.BeanManagerImpl.getReference(BeanManagerImpl.java:850)
> >
> org.apache.webbeans.container.InjectableBeanManager.getReference(InjectableBeanManager.java:135)
> >
> org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvider.getReference(BeanManagerProvider.java:216)
> >
> org.apache.myfaces.extensions.cdi.core.api.provider.BeanManagerProvider.getContextualReference(BeanManagerProvider.java:176)
> >
> org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecycleWrapper.broadcastBeforeFacesRequestEvent(CodiLifecycleWrapper.java:157)
> >
> org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecycleWrapper.execute(CodiLifecycleWrapper.java:81)
> > javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
> >
> > -----Ursprüngliche Nachricht-----
> > Von: Romain Manni-Bucau [mailto:rmannibucau@gmail.com]
> > Gesendet: Freitag, 4. Januar 2013 14:00
> > An: users@openejb.apache.org
> > 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 <dm...@eiskonzept.com>:
> >> 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:rmannibucau@gmail.com]
> >> Gesendet: Donnerstag, 3. Januar 2013 21:41
> >> An: users@openejb.apache.org
> >> 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, <
> dmitry.volkov@eiskonzept.com> 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:rmannibucau@gmail.com]
> >>> Gesendet: Donnerstag, 3. Januar 2013 15:38
> >>> An: users@openejb.apache.org
> >>> 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 <dm...@eiskonzept.com>:
> >>> > cannot load the class
> >>>
>