I am seeing the same issue.  My configuration is slightly different in that I am using Drools 4.0.3 and JBoss 4.2.2GA with Java 5.  I have been searching very hard to find where these two different version of AbstractParser are coming from.   This class comes out of the MVEL.  The jar in the drools-jbrms is mvel14-1.2.10.jar.  I only see this jar within the deployment.

 

My thought is that a serialized version of the class is stored in a file somewhere in the demo project or the BRMS itself, and that it is from an older version mvel.

 

 

-J

 

--Original Message—

Folks,
 
Using BRMS 4.0.2 and examples 4.02 as downloaded from the 'official 
release' site.
 
Working my way through the Drools Insurance Sample (on BRMS). I'm 
deploying BRMS successfully on JBoss 4.2.1 with Java 1.6.0_02. I can 
import the repository_export.xml ok and see the files. I leave this part 
of the sample running as per the instructions.
 
When I go to the 2nd part of the example I have a problem running the 
unit tests: within /drools-examples/drools-insurance I run: mvn clean 
package. I get the error(1) at the bottom of this email. I do *not* get 
the output as per the documentaiton. I skip the tests, build and deploy 
the drools-insurance.war
 
When deploying the war I see the following error (2) in the JBoss logs . 
However main drools insurance page loads ok as per the screenshot in the 
documentation):
 22:43:13,576 INFO  [WebappClassLoader] 
validateJarFile(C:\software\jboss-4-2-1\server\default\.\tmp\deploy\tmp26632drool
s-insurance-exp.war\WEB-INF\lib\servlet-api-2.3.jar) - jar not loaded. 
See Servlet Spec 2.3, section 9.7.2. Offending class: 
javax/servlet/Servlet.class
 
I enter some values in the web app (make sure there are no nulls) press 
'continue' then get the same error (3)
22:48:55,294 ERROR [STDERR] java.io.InvalidClassException: 
org.mvel.AbstractParser; local class incompatible: stream cla
ssdesc serialVersionUID = 256028721591955695, local class 
serialVersionUID = -7464517220700761297
22:48:55,310 ERROR [STDERR]     at 
java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562)
 
As an aside , when I look for the latest BRMS , as mentioned in the docs 
(http://cruisecontrol.jboss.com/cc/artifacts/jboss-rules) - I get a 
'Invalid File or Directory'
 
Is there anything I should try to resolve this?
 
Paul
 
 
 
 
 
RuleAgent(insuranceconfig) INFO (Thu Oct 18 22:37:44 BST 2007): 
Configuring package provider : URLScanner monitoring URL
s:  
http://localhost:8080/drools-jbrms/org.drools.brms.JBRMS/package/org.acme.insurance.base/InsuranceDemo
RuleAgent(insuranceconfig) EXCEPTION (Thu Oct 18 22:37:45 BST 2007): 
org.mvel.AbstractParser; local class incompatible:
stream classdesc serialVersionUID = 256028721591955695, local class 
serialVersionUID = -7464517220700761297. Stack trace
 should follow..io.ObjectStreamClass.initNonProxy(Unknown Source)
java.io.InvalidClassException: org.mvel.AbstractParser; local class 
incompatible: stream classdesc serialVersionUID = 25
6028721591955695, local class serialVersionUID = -7464517220700761297
        at java.io.ObjectStreamClass.initNonProxy(Unknown Source)rce)
        at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
        at java.io.ObjectInputStream.readClassDesc(Unknown Source)urce)
        at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
        at java.io.ObjectInputStream.readClassDesc(Unknown Source)rce)
        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
        at java.io.ObjectInputStream.readObject0(Unknown Source)Source)
        at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
        at java.io.ObjectInputStream.readSerialData(Unknown Source)ce)
        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
        at java.io.ObjectInputStream.readObject0(Unknown Source)Source
        at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
        at java.io.ObjectInputStream.readSerialData(Unknown Source)ce)
        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
        at java.io.ObjectInputStream.readObject0(Unknown Source)Source)
        at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
        at java.io.ObjectInputStream.readSerialData(Unknown Source)ce)
        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
        at java.io.ObjectInputStream.readObject0(Unknown Source)Source)
        at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
        at java.io.ObjectInputStream.readSerialData(Unknown Source)
        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
        at java.io.ObjectInputStream.readObject0(Unknown Source)ource)
        at java.io.ObjectInputStream.readObject(Unknown Source)own Source)
        at java.util.HashMap.readObject(Unknown Source)ce)
        at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)known Source)
        at java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
        at java.io.ObjectInputStream.readSerialData(Unknown Source)
        at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
        at java.io.ObjectInputStream.readObject0(Unknown Source)urce)
        at java.io.ObjectInputStream.readObject(Unknown Source) Source)
        at org.drools.rule.Package.readExternal(Package.java:194)
        at java.io.ObjectInputStream.readExternalData(Unknown Source)
        at java.io.ObjectInputStream.readOrdinaryObject(Unknown 
Source)java:54)
        at java.io.ObjectInputStream.readObject0(Unknown Source)va:137)
        at java.io.ObjectInputStream.readObject(Unknown Source)java:109)
        at 
org.drools.agent.HttpClientImpl.fetchPackage(HttpClientImpl.java:54)
        at org.drools.agent.URLScanner.readPackage(URLScanner.java:137)0)
        at org.drools.agent.URLScanner.getChangeSet(URLScanner.java:109))
        at 
org.drools.agent.URLScanner.loadPackageChanges(URLScanner.java:88)
        at org.drools.agent.RuleAgent.checkForChanges(RuleAgent.java:330)
        at org.drools.agent.RuleAgent.refreshRuleBase(RuleAgent.java:298)
        at org.drools.agent.RuleAgent.configure(RuleAgent.java:284)48)
        at org.drools.agent.RuleAgent.init(RuleAgent.java:208)ava:216)
        at 
org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:176)romRuleAgent(InsuranceSessionHelper.java:26)
        at 
org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:148)suranceSessionHelper.java:17)
        at 
org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:216)ntalInfoTest.java:23)
        at 
org.acme.insurance.web.InsuranceSessionHelper.loadRuleBaseFromRuleAgent(InsuranceSessionHelper.java:26)
        at 
org.acme.insurance.web.InsuranceSessionHelper.getSession(InsuranceSessionHelper.java:17)
        at 
org.acme.insurance.test.SupplementalInfoTest.setUp(SupplementalInfoTest.java:23)
        at junit.framework.TestCase.runBare(TestCase.java:125)
        at junit.framework.TestResult$1.protect(TestResult.java:106)
        at junit.framework.TestResult.runProtected(TestResult.java:124)
        at junit.framework.TestResult.run(TestResult.java:109)
        at junit.framework.TestCase.run(TestCase.java:118)tive Method)
        at junit.framework.TestSuite.runTest(TestSuite.java:208)ource)
        at junit.framework.TestSuite.run(TestSuite.java:203)nknown Source)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown 
Source)estSet.java:210)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown 
Source)uteTestSet(AbstractDirectoryTestSuite.java:135
        at java.lang.reflect.Method.invoke(Unknown Source)
        at 
org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:210)DirectoryTestSuite.java:122)
        at 
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:135
)       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:122)
        at org.apache.maven.surefire.Surefire.run(Surefire.java:129)ource)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown 
Source)Process(SurefireBooter.java:225)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown 
Source)oter.java:747)
        at java.lang.reflect.Method.invoke(Unknown Source)psed: 0.671 
sec <<< FAILURE!
        at 
org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:225)
        at 
org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:747)
Tests run: 5, Failures: 0, Errors: 5, Skipped: 0, Time elapsed: 0.655 
sec <<< FAILURE!
Running org.acme.insurance.test.DriverTestped: 0, Time elapsed: 0 sec 
<<< FAILURE!
Tests run: 7, Failures: 0, Errors: 7, Skipped: 0, Time elapsed: 0.016 
sec <<< FAILURE!
Running org.acme.insurance.test.DriverAdditionalInfoTestlapsed: 0.015 
sec <<< FAILURE!
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.015 
sec <<< FAILURE!
Running org.acme.insurance.test.InsuranceCalculateTest
Tests run: 3, Failures: 0, Errors: 3, Skipped: 0, Time elapsed: 0.016 
sec <<< FAILURE!