This content has been marked as final.
Show 3 replies
-
1. Re: JBoss Rules problem (where else to post?)
pmuir Sep 4, 2006 6:46 AM (in response to galo.navarro)I can't help you with your problem (have you tried the mailing list linked off http://labs.jboss.com?)
but
have you looked at Seam's Drools support? It allows you to inject the working memory object and not have to load the rules file from disk. -
2. Re: JBoss Rules problem (where else to post?)
dgallego Sep 4, 2006 11:43 AM (in response to galo.navarro)You shouldn't use an absolute path to load your rules.
Instead, use this method (extracted from Drools examples and modified).public static RuleBase readRule(Class readerClass, String rulesFile, String rulesDslFile) throws Exception { if (rulesFile == null) return null; PackageBuilder builder = new PackageBuilder(); Reader source = new InputStreamReader(readerClass.getResourceAsStream(rulesFile)); if (rulesDslFile == null) builder.addPackageFromDrl(source); else { Reader dsl = new InputStreamReader(readerClass.getResourceAsStream(rulesDslFile)); builder.addPackageFromDrl(source, dsl); } RuleBase ruleBase = RuleBaseFactory.newRuleBase(); Package pkg = builder.getPackage(); ruleBase.addPackage(pkg); return ruleBase; }
[...]RuleBase ruleBase = readRule(MyClass.class, "rules.drl", null); WorkingMemory wm = ruleBase.newWorkingMemory();
Hope it helps. -
3. Re: JBoss Rules problem (where else to post?)
galo.navarro Sep 5, 2006 12:02 PM (in response to galo.navarro)Thanks for your replies.
Petemuir, I know there's some support for rules on Seam but I need to stay away from Seam by now.. shame.
dgallego, thanks, I'll copy that. The .drl file will be then packaged in my .jar file? (something like..)
mypackage.jar
|
|_mypackage.bean
| |_ ejb classes
|_mypackage.rules
|_ myrules.drl
Thanks