Is there a bug with drools when you try to use a dsl and drl? I've read
several post where people seem to be getting the same errors as I am.
My drl looks like this:
package com.insurance
expander underwriting.dsl
rule "Low Premium"
when
There is a policy
- for a male
- with a premium less than 50.00
then
Accept the policy;
end
I have this code to read the drl and associated dsl and build a package:
String drl = "/underwriting.drl";
String dsl = "/underwriting.dsl";
PackageBuilder builder = new PackageBuilder();
InputStreamReader drlInput = new
InputStreamReader(InsuranceExample.class.getResourceAsStream(drl));
InputStreamReader dslInput = new
InputStreamReader(InsuranceExample.class.getResourceAsStream(dsl));
builder.addPackageFromDrl(drlInput, dslInput);
RuleBase ruleBase = RuleBaseFactory.newRuleBase();
ruleBase.addPackage( builder.getPackage() );
When I run the code I get a 'ExpanderException'
Exception in thread "main" org.drools.rule.InvalidRulePackage:
org.drools.lang.ExpanderException@157aa53
org.drools.lang.ExpanderException@6f50a8
org.drools.lang.ExpanderException@187814
org.drools.lang.ExpanderException@73a7ab
org.drools.lang.ExpanderException@104faf8
org.drools.lang.ExpanderException@1f8c6df
org.drools.lang.ExpanderException@1c86be5
org.drools.lang.ExpanderException@123b25c
org.drools.lang.ExpanderException@92bbba
org.drools.lang.ExpanderException@162dbb6
org.drools.lang.ExpanderException@146c1d4
org.drools.lang.ExpanderException@5f8172
org.drools.lang.ExpanderException@2ba11b
org.drools.lang.ExpanderException@5e179a
org.drools.lang.ExpanderException@15fadcf
at org.drools.rule.Package.checkValidity(Package.java:408)
at org.drools.common.AbstractRuleBase.addPackage
(AbstractRuleBase.java:288)
Can someone tell me what I'm doing wrong and what the correct code would
be for reading a drl/dsl and building a package and rulebase? Does
building drl rules from a dsl not work in drools 4.0.1?
Thanks,
Rod