Clustering Seam Application + Drools Serialization errpr
balazska Oct 14, 2009 9:29 PMHi!
I would like to setup http session replication, but I always get Drools Serialization exception, when the either node is fail over, and another node is begin serving a request.
If I remove drools settings from components.xml everything works fine, except the security.
Please help me.
my drools config is in components.xml:
<security:rule-based-permission-resolver security-rules="#{securityRules}" /> <drools:rule-base name="securityRules" > <drools:rule-files> <value>/META-INF/rules/first.drl</value> <value>/META-INF/rules/second.drl</value> </drools:rule-files> </drools:rule-base>
and the exception what I get when I stopped the request serving node .
2009-10-13 14:57:18,277 ERROR [org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.SessionBasedJBossCacheService] (ajp-192.168.1.140-8009-1) IOException occurred unmarshalling value java.io.EOFException at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2281) at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2750) at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:780) at java.io.ObjectInputStream.<init>(ObjectInputStream.java:280) at org.drools.common.DroolsObjectInputStream.<init>(DroolsObjectInputStream.java:55) at org.drools.common.DroolsObjectInputStream.<init>(DroolsObjectInputStream.java:49) at org.drools.common.AbstractRuleBase.readExternal(AbstractRuleBase.java:232) at org.drools.reteoo.ReteooRuleBase.readExternal(ReteooRuleBase.java:179) at java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1792) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1751) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) at java.util.HashMap.readObject(HashMap.java:1030) at sun.reflect.GeneratedMethodAccessor304.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351) at org.jboss.ha.framework.server.SimpleCachableMarshalledValue.get(SimpleCachableMarshalledValue.java:94) at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.AbstractJBossCacheService.getUnMarshalledValue(AbstractJBossCacheService.java:660) at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.SessionBasedJBossCacheService.getSessionAttributes(SessionBasedJBossCacheService.java:114) at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.AbstractJBossCacheService.getDistributableSessionData(AbstractJBossCacheService.java:581) at org.jboss.web.tomcat.service.session.distributedcache.impl.jbc.AbstractJBossCacheService.getSessionData(AbstractJBossCacheService.java:364) at org.jboss.web.tomcat.service.session.JBossCacheManager.loadSession(JBossCacheManager.java:1832) at org.jboss.web.tomcat.service.session.JBossCacheManager.findSession(JBossCacheManager.java:489) at org.apache.catalina.connector.Request.doGetSession(Request.java:2320) at org.apache.catalina.connector.Request.getSessionInternal(Request.java:2239) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:394) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330) at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:436) at org.apache.coyote.ajp.AjpProtocol$AjpConnectionHandler.process(AjpProtocol.java:384) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:619)