[rules-users] BRMS Insurance Sample - InvalidClassException

Paul Browne paulb at firstpartners.net
Fri Jan 18 02:38:32 EST 2008


Folks,

I'm working through the BRMS insurance example (the very last section in 
the Drools documentation). I can build ( the example) and deploy both it 
and the BRMS ok. I import the repository , rebuild the snapshot binaries 
(BRMS), then hit the 'Continue' button on the drools insurance I get the 
InvalidClassException (below).

I remember testing this for Edson and Ferando a couple of months back, 
so it could be something stupid that I'm doing. I'm running JBoss 4.2.1 
, Java 1.6.0_03 on Windows Vista.  I'm currently using BRMS 4.0.4 , with 
the insurance example from the Trunk (4.1.0 Snapshot),

Other things I've tried:
1) All combinations of latest stable 4.0.4 and Trunk (including the 
obvious 4.0.4 for both, and the snapshot for both)
2) I've extracted the fact classes from the insurance war, made a 
standalone jar, and imported these into the BRMS
3) I've check the URL that the Insurance example uses, and modified it 
to take ' /LATEST'.

Michael (thanks for the earlier suggestion) : Is this (number 2) what 
you meant by updating the Jars? Any other suggestions that I can try?

Thanks

Paul





07:18:44,174 ERROR [STDERR] java.io.InvalidClassException: 
org.drools.base.BaseEvaluator; local class incompatible: stre
am classdesc serialVersionUID = -8775766726376324603, local class 
serialVersionUID = 6904653022187134940
07:18:44,174 ERROR [STDERR]     at 
java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562)
07:18:44,190 ERROR [STDERR]     at 
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1583)
07:18:44,190 ERROR [STDERR]     at 
java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
07:18:44,190 ERROR [STDERR]     at 
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1583)
07:18:44,190 ERROR [STDERR]     at 
java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
07:18:44,190 ERROR [STDERR]     at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
07:18:44,190 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
07:18:44,190 ERROR [STDERR]     at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
07:18:44,205 ERROR [STDERR]     at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
07:18:44,205 ERROR [STDERR]     at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
07:18:44,205 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
07:18:44,205 ERROR [STDERR]     at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
07:18:44,221 ERROR [STDERR]     at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
07:18:44,221 ERROR [STDERR]     at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
07:18:44,221 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
07:18:44,221 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
07:18:44,221 ERROR [STDERR]     at 
java.util.ArrayList.readObject(ArrayList.java:593)
07:18:44,221 ERROR [STDERR]     at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
07:18:44,221 ERROR [STDERR]     at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
07:18:44,236 ERROR [STDERR]     at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

07:18:44,236 ERROR [STDERR]     at 
java.lang.reflect.Method.invoke(Method.java:597)
07:18:44,236 ERROR [STDERR]     at 
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
07:18:44,236 ERROR [STDERR]     at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1846)
07:18:44,236 ERROR [STDERR]     at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
07:18:44,252 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
07:18:44,252 ERROR [STDERR]     at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
07:18:44,252 ERROR [STDERR]     at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
07:18:44,252 ERROR [STDERR]     at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
07:18:44,252 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
07:18:44,252 ERROR [STDERR]     at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
07:18:44,268 ERROR [STDERR]     at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
07:18:44,268 ERROR [STDERR]     at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
07:18:44,268 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
07:18:44,283 ERROR [STDERR]     at 
java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
07:18:44,283 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
07:18:44,283 ERROR [STDERR]     at 
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
07:18:44,283 ERROR [STDERR]     at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
07:18:44,283 ERROR [STDERR]     at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
07:18:44,299 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
07:18:44,299 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
07:18:44,299 ERROR [STDERR]     at 
java.util.HashMap.readObject(HashMap.java:1030)
07:18:44,299 ERROR [STDERR]     at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
07:18:44,299 ERROR [STDERR]     at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
07:18:44,299 ERROR [STDERR]     at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

07:18:44,314 ERROR [STDERR]     at 
java.lang.reflect.Method.invoke(Method.java:597)
07:18:44,314 ERROR [STDERR]     at 
java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
07:18:44,314 ERROR [STDERR]     at 
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1846)
07:18:44,314 ERROR [STDERR]     at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
07:18:44,330 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
07:18:44,330 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
07:18:44,330 ERROR [STDERR]     at 
org.drools.rule.PackageCompilationData.readExternal(PackageCompilationData.java:152)
07:18:44,330 ERROR [STDERR]     at 
java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1792)
07:18:44,330 ERROR [STDERR]     at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1751)
07:18:44,330 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
07:18:44,330 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
07:18:44,346 ERROR [STDERR]     at 
org.drools.rule.Package.readExternal(Package.java:175)
07:18:44,346 ERROR [STDERR]     at 
java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1792)
07:18:44,346 ERROR [STDERR]     at 
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1751)
07:18:44,346 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
07:18:44,346 ERROR [STDERR]     at 
java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
07:18:44,361 ERROR [STDERR]     at 
org.drools.agent.HttpClientImpl.fetchPackage(HttpClientImpl.java:54)
07:18:44,361 ERROR [STDERR]     at 
org.drools.agent.URLScanner.readPackage(URLScanner.java:137)
07:18:44,361 ERROR [STDERR]     at 
org.drools.agent.URLScanner.getChangeSet(URLScanner.java:109)
07:18:44,361 ERROR [STDERR]     at 
org.drools.agent.URLScanner.loadPackageChanges(URLScanner.java:88)
07:18:44,361 ERROR [STDERR]     at 
org.drools.agent.RuleAgent.checkForChanges(RuleAgent.java:330)
07:18:44,361 ERROR [STDERR]     at 
org.drools.agent.RuleAgent.refreshRuleBase(RuleAgent.java:298)
07:18:44,377 ERROR [STDERR]     at 
org.drools.agent.RuleAgent.configure(RuleAgent.java:284)
07:18:44,377 ERROR [STDERR]     at 
org.drools.agent.RuleAgent.init(RuleAgent.java:208)
07:18:44,377 ERROR [STDERR]     at 
org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:176)
07:18:44,377 ERROR [STDERR]     at 
org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:148)
07:18:44,377 ERROR [STDERR]     at 
org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:216)
07:18:44,377 ERROR [STDERR]     at 
org.acme.insurance.web.InsuranceSessionHelper.loadRuleBaseFromRuleAgent(InsuranceSess
ionHelper.java:26)
07:18:44,392 ERROR [STDERR]     at 
org.acme.insurance.web.InsuranceSessionHelper.getSession(InsuranceSessionHelper.java:
17)
07:18:44,392 ERROR [STDERR]     at 
org.acme.insurance.web.DroolsBusiness.execute(DroolsBusiness.java:46)
07:18:44,392 ERROR [STDERR]     at 
org.acme.insurance.web.InsuranceServlet.doGet(InsuranceServlet.java:24)
07:18:44,392 ERROR [STDERR]     at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
07:18:44,392 ERROR [STDERR]     at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
07:18:44,392 ERROR [STDERR]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterCha
in.java:290)
07:18:44,408 ERROR [STDERR]     at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
206)
07:18:44,408 ERROR [STDERR]     at 
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
07:18:44,408 ERROR [STDERR]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterCha
in.java:235)
07:18:44,424 ERROR [STDERR]     at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
206)
07:18:44,424 ERROR [STDERR]     at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
07:18:44,424 ERROR [STDERR]     at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
07:18:44,424 ERROR [STDERR]     at 
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValv
e.java:179)
07:18:44,424 ERROR [STDERR]     at 
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
07:18:44,439 ERROR [STDERR]     at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
07:18:44,455 ERROR [STDERR]     at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
07:18:44,455 ERROR [STDERR]     at 
org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.j
ava:157)
07:18:44,455 ERROR [STDERR]     at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
07:18:44,455 ERROR [STDERR]     at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
07:18:44,455 ERROR [STDERR]     at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
07:18:44,470 ERROR [STDERR]     at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protoco
l.java:580)
07:18:44,470 ERROR [STDERR]     at 
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
07:18:44,470 ERROR [STDERR]     at java.lang.Thread.run(Thread.java:619)
07:18:44,658 ERROR [STDERR] java.lang.IllegalArgumentException: Unknown 
process ID: insuranceProcess
07:18:44,658 ERROR [STDERR]     at 
org.drools.common.AbstractWorkingMemory.startProcess(AbstractWorkingMemory.java:1571)

07:18:44,673 ERROR [STDERR]     at 
org.drools.common.AbstractWorkingMemory.startProcess(AbstractWorkingMemory.java:1565)

07:18:44,673 ERROR [STDERR]     at 
org.acme.insurance.web.InsuranceSessionHelper.getSession(InsuranceSessionHelper.java:
21)
07:18:44,673 ERROR [STDERR]     at 
org.acme.insurance.web.DroolsBusiness.execute(DroolsBusiness.java:46)
07:18:44,673 ERROR [STDERR]     at 
org.acme.insurance.web.InsuranceServlet.doGet(InsuranceServlet.java:24)
07:18:44,689 ERROR [STDERR]     at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
07:18:44,689 ERROR [STDERR]     at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
07:18:44,689 ERROR [STDERR]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterCha
in.java:290)
07:18:44,689 ERROR [STDERR]     at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
206)
07:18:44,689 ERROR [STDERR]     at 
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
07:18:44,689 ERROR [STDERR]     at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterCha
in.java:235)
07:18:44,704 ERROR [STDERR]     at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
206)
07:18:44,704 ERROR [STDERR]     at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
07:18:44,704 ERROR [STDERR]     at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
07:18:44,704 ERROR [STDERR]     at 
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValv
e.java:179)
07:18:44,720 ERROR [STDERR]     at 
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
07:18:44,720 ERROR [STDERR]     at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
07:18:44,720 ERROR [STDERR]     at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
07:18:44,720 ERROR [STDERR]     at 
org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.j
ava:157)
07:18:44,720 ERROR [STDERR]     at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
07:18:44,736 ERROR [STDERR]     at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
07:18:44,736 ERROR [STDERR]     at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
07:18:44,736 ERROR [STDERR]     at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protoco
l.java:580)
07:18:44,736 ERROR [STDERR]     at 
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
07:18:44,736 ERROR [STDERR]     at java.lang.Thread.run(Thread.java:619)
07:19:14,516 INFO  [STDOUT] ERROR 18-01 07:19:14,516 
(Contexts.java:flushAndDestroyContexts:335)     could not discover
transaction status







More information about the rules-users mailing list