Tomcat 5.5
Java 1.5
jbossrules-4.0.0.12865MR3

I have an instance of Drools running inside a webapp deployed on Tomcat.
The rules have been compiled ahead of time and are loaded in with:

InputStream is = PolicyRuntime.class.getResourceAsStream(name);
DroolsObjectInputStream in = new DroolsObjectInputStream(is);
Package p = (Package) in.readObject();

When run outside Tomcat it loads fine, when run inside Tomcat I get:

java.lang.NoClassDefFoundError:
org/drools/base/extractors/BaseObjectClassFieldExtractor
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        at org.drools.base.ClassFieldExtractorFactory
$ByteArrayClassLoader.defineClass(ClassFieldExtractorFactory.java:455)
        at
org.drools.base.ClassFieldExtractorFactory.getClassFieldExtractor(ClassFieldExtractorFactory.java:114)
        at
org.drools.base.ClassFieldExtractor.init(ClassFieldExtractor.java:77)
        at
org.drools.base.ClassFieldExtractor.<init>(ClassFieldExtractor.java:57)
        at
org.drools.base.ClassFieldExtractorCache.getExtractor(ClassFieldExtractorCache.java:35)
        at
org.drools.base.ClassFieldExtractor.readResolve(ClassFieldExtractor.java:72)

I've tried adding DroolsObjectInputStream.class.getClassLoader() ,
PolicyRuntime.class.getClassLoader() and
Thread.currentThread().getContextClassLoader() to the constructor of the
DroolsObjectInputStream but none had any effect.

Thanks

Jesse

_______________________________________________
rules-users mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to