2008/11/21 vanshi
<nilu.thakur@gmail.com>
Thanks everybody for the responses.
Scanning through old posts here, I found out that each time a new DRL is
added to package builder, all the rules from the previous DRL are also
compiled again. So, that means, the rules in the first DRL will compile 3
times unnecessarily. So, I'm going to put all rules in just one drl. If
anybody wishes to see mor details then check out the end of this thread
where this behaviour has been discussed......plz look towards the end.
http://www.nabble.com/RuleBase-addPackage-failure-td6603598.html#a6607165
I noticed that when I chaged the name of some rules then I started getting
null pointer exception with this stack trace.
java.lang.NullPointerException
at org.drools.reteoo.ReteooBuilder.removeRule(ReteooBuilder.java:224)
at org.drools.reteoo.ReteooRuleBase.removeRule(ReteooRuleBase.java:270)
at org.drools.common.AbstractRuleBase.removeRule(AbstractRuleBase.java:656)
at
org.drools.common.AbstractRuleBase.mergePackage(AbstractRuleBase.java:519)
at org.drools.common.AbstractRuleBase.addPackage(AbstractRuleBase.java:409)
at
com.uhg.scs.optum.ng.rules.RuleEngine.parseRuleFiles(RuleEngine.java:102)
at com.uhg.scs.optum.ng.rules.RuleEngine.<clinit>(RuleEngine.java:46)
at
com.uhg.scs.optum.ng.unittest.HaRulesOldUnitTests.<init>(HaRulesOldUnitTests.java:20)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown
Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at junit.framework.TestSuite.createTest(TestSuite.java:61)
at junit.framework.TestSuite.addTestMethod(TestSuite.java:283)
at junit.framework.TestSuite.<init>(TestSuite.java:146)
at
org.junit.internal.runners.JUnit38ClassRunner.<init>(JUnit38ClassRunner.java:67)
at
org.junit.internal.builders.JUnit3Builder.runnerForClass(JUnit3Builder.java:14)
at
org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57)
at
org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:29)
at
org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57)
at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:24)
Guessing ....that removing/renaming rules must proceed with some clean up
first...anybody has any idea how to cleanly do that??
--
View this message in context: http://www.nabble.com/DRL-package-builder-or-rule-base-error-tp20627083p20632868.html
Sent from the drools - user mailing list archive at Nabble.com.
_______________________________________________