[rules-users] possible classloading issue, causing rule to not evaluate properly

Thong Nguyen thong at gnoht.com
Mon Jun 11 21:56:17 EDT 2007


Hi,

I'm having an issue with the following rule NOT evaluating properly when
fired from a rulebase/package built on a web container vs. directly in
something like eclipse:

rule "Test Rule"
 no-loop true
when
 Customer( $name : name, $city : city )
 Customer( ($name == "john" || $city == "la") )
then
 System.out.println("you qualified");
end


For some reason when I run this rule on a standalone test class (with name
set to "john") it seems to fire and i get the "you qualified" printed out.
But the same exact rule, which I have configured to be accessable to fire
from within my web application does fire, but will not evaluate to true. I
have the same exact code building the package in both situations, same jars
and same Customer fact being asserted into session. The only difference I
can tell so far is classloaders that was used to load the standalone vs the
webapp PackageBuilder config.

>From standalone (run from eclipse), I have the following:

PackageBuilderConfiguration
  - Compiler set to: 1 (JANINO)
  - JavaLanguage set to: 1.4
  - classloader: sun.misc.Launcher$AppClassLoader

>From webapp, I have the following for config;

  - Compiler set to: 1 (JANINO)
  - JavaLanguage set to: 1.4
  - classloader: WebappClassLoader
  delegate: false
  repositories:
    /WEB-INF/classes/
----------> Parent Classloader:
org.apache.catalina.loader.StandardClassLoader at 10045eb

I'm running Tomcat 5.52 on JVM1.5.0_11-b03

I've tried searching everywhere and can't seem to figure out what's going
on. My only guess is maybe I have some extra jar loaded in my web container
or maybe they are loaded in the wrong order. Any pointers would be great -
been at this for the whole day.

Thanks for your time,
Thong
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20070611/846038b2/attachment.html 


More information about the rules-users mailing list