[rules-users] ClassNotFound exception running brms example (newbie)

Fernando Meyer fmcamargo at gmail.com
Sun Sep 30 20:08:34 EDT 2007


Hi,

Are you using the latest brms build ? if the anwser is not, please download
the latest version from
https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/it
was a missing class in the drools-core library.

On 9/30/07, Martin Fuzzey <mfuzzey at neuf.fr> wrote:
>
> Hi,
>
> I am trying to run the insurance example with the brms
> after replacing the client mvel jar with the one used by the brms web
> app as mentionned on this list I get this exeception (full stacktrace
> below)
>
> java.lang.ClassNotFoundException:
> org.drools.rule.builder.dialect.mvel.MVELDialect$ModifyInterceptor
>
> adding the drools-compiler-4.0.1.jar to the client classpath fixes this
> but I thought the rules were supposed to be compiled by the brms. Indeed
> the documentation says :
>
> The rule agent is a component which is embedded in the core runtime of
> the rules engine. To use this, you don't need any extra components. In
> fact, if you are using the BRMS, your application should only need to
> include the drools-core.jar in its classpath, and no other rules
> specific dependencies.
>
> so am I misunderstanding something or is this a bug?
>
> Thanks,
>
> Martin Fuzzey
>
>
> RuleAgent(insuranceconfig) INFO (Sun Sep 30 14:02:33 CEST 2007):
> Configuring with newInstance=true, secondsToRefresh=30
> RuleAgent(insuranceconfig) INFO (Sun Sep 30 14:02:33 CEST 2007):
> Configuring package provider : URLScanner monitoring URLs:
>
> http://localhost:8080/drools-jbrms/org.drools.brms.JBRMS/package/org.acme.insurance/MF1
> with local cache dir of /home/martin/tmp
> RuleAgent(insuranceconfig) EXCEPTION (Sun Sep 30 14:02:34 CEST 2007):
> org.drools.rule.builder.dialect.mvel.MVELDialect$ModifyInterceptor.
> Stack trace should follow.
> java.lang.ClassNotFoundException:
> org.drools.rule.builder.dialect.mvel.MVELDialect$ModifyInterceptor
>          at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
>          at java.security.AccessController.doPrivileged(Native Method)
>          at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
>          at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
>          at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
>          at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>          at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>          at java.lang.Class.forName0(Native Method)
>          at java.lang.Class.forName(Class.java:247)
>          at
> java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:604)
>          at
> org.drools.common.DroolsObjectInputStream.resolveClass(
> DroolsObjectInputStream.java:74)
>          at
> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
>          at
> java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
>          at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
>          at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>          at java.io.ObjectInputStream.readObject(ObjectInputStream.java
> :351)
>          at java.util.HashMap.readObject(HashMap.java:1029)
>          at sun.reflect.GeneratedMethodAccessor2.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:1846)
>          at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
>          at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>          at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
>          at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
>          at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
>          at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>          at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
>          at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
>          at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
>          at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>          at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
>          at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
>          at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
>          at
> java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>          at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1945)
>          at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1869)
>          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:1029)
>          at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
>          at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso
> rImpl.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:1846)
>          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.drools.rule.Package.readExternal(Package.java:189)
>          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.readObject(ObjectInputStream.java
> :351)
>          at
> org.drools.agent.HttpClientImpl.fetchPackage(HttpClientImpl.java:54)
>          at org.drools.agent.URLScanner.readPackage(URLScanner.java:137)
>          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:327)
>          at org.drools.agent.RuleAgent.refreshRuleBase(RuleAgent.java:295)
>          at org.drools.agent.RuleAgent.configure(RuleAgent.java:281)
>          at org.drools.agent.RuleAgent.init(RuleAgent.java:205)
>          at org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:173)
>          at org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:145)
>          at org.drools.agent.RuleAgent.newRuleAgent(RuleAgent.java:213)
>          at
> org.acme.insurance.launcher.InsuranceBusiness.loadRuleBase(
> InsuranceBusiness.java:26)
>          at
> org.acme.insurance.launcher.InsuranceBusiness.executeExample(
> InsuranceBusiness.java:14)
>          at org.acme.insurance.launcher.MainClass.main(MainClass.java:13)
> RuleAgent(insuranceconfig) WARNING (Sun Sep 30 14:02:35 CEST 2007): Was
> unable to load a class when loading a package. Perhaps it is missing
> from this appl
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>



-- 
Fernando Meyer http://fmeyer.org
JBoss Rules Core Developer
fmcamargo at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20070930/d701d7b2/attachment.html 


More information about the rules-users mailing list