Hide Forgot
securitylevel_name: Public I have and ESB application that calls a custom action. In this custom action I call an EJB session bean. This bean uses Drools to evaluate the incoming object. See the attached application for more information. When I deploy the application (ant deploy) and run the test (ant runtest) it works well and you can see the following line in the console: 18:07:06,261 INFO [STDOUT] Driver's computed risk group=10 When you redeploy the application (ant undeploy, ant deploy) and run the test again, no rules except for a dummy log rule are evaluated. You can recognize it in the console log: 18:12:34,745 INFO [STDOUT] Driver's computed risk group=0 The rule file is jar/src/org/jboss/soa/esb/samples/quickstart/integration/drools/slsb/RiskGroup.drl. I believe that the issue is with working memory. Simple rule like the following gets evaluated: rule "log" dialect "mvel" when eval(true) then System.out.println("Rules are evaluating"); end If you configure a rule that grabs any Driver object like the following one, it is not evaluated: rule "log" dialect "mvel" when p : Driver( ) then System.out.println("Rules are evaluating"); end However, the session bean puts a real populated object into it.
Link: Added: This issue depends SOA-2419
Changed the CL order. Now consecutive test runs also show: 2010-10-20 19:09:29,174 INFO [STDOUT] (pool-34-thread-1) Driver's computed risk group=10
Draft release notes text states: https://jira.jboss.org/browse/BRMS-404 If an ESB application had a custom action that called an EJB session bean that used JBoss Rules to evaluate an incoming object, JBoss Rules was not able to see that object. This occurred because the classes were loaded via the jbrules.esb class loader rather than the context class loader and the class was cached between deployments, meaning the class loader was leaked. To fix this problem, the order has been changed so that the context class loader is activated before the current one. As a result, the rules now find the class loader that they are expecting to see.
Writer: Added: dlesage
Release Notes Docs Status: Added: Documented as Resolved Issue
Release Notes Text: Added: test
Release Notes Text: Removed: test
Release Notes Text: Added: If an ESB application had a custom action that called an EJB session bean that used JBoss Rules to evaluate an incoming object, JBoss Rules was not able to see that object. This occurred because the classes were loaded via the jbrules.esb class loader rather than the context class loader and the class was cached between deployments, meaning the class loader was leaked. To fix this problem, the order has been changed so that the context class loader is activated before the current one. As a result, the rules now find the class loader that they are expecting to see.