[rules-users] Re:Shadow Facts

J Michael Dean mdean77 at comcast.net
Sun Feb 15 13:08:35 EST 2009


Edson - build2589-rev25264-20090214-0603 is the snapshot that I  
downloaded and installed.  However, I have done a search on the source  
and have not been able to locate  
MiscTest.testPropertyChangeSupportNewAPI() in the source at all.

Interestingly, the DRL compilation does not crash if I use  
@propertyChangeSupport() or @propertyChangeSupport(true) etc.  But  
otherwise it crashes.   It dies in the following code:

	public DecisionEngine()  {
		super();
		try {
			rulesEngine = new RulesEngine("GlucoseDroolRules00.drl");
			//rulesEngine = new RulesEngine("rules_version1.drl");
			//rulesEngine = new RulesEngine();
		} catch (RulesEngineException e) {
			System.out.println("Error in DecisionEngine constructor");
			e.printStackTrace();
		}
	}

	public RulesEngine(String rulesFile) throws RulesEngineException {
		super();
		try {
			readDRLintoPackage(rulesFile);
			addSpreadsheetToPackage();
		} catch (Exception e) {
			System.out.println(e);
			throw new RulesEngineException("Could not load/compile rules file:  
" + rulesFile, e);
		}
	}

java.lang.NullPointerException
Error in DecisionEngine constructor
drools.engine.RulesEngineException: Could not load/compile rules file:  
GlucoseDroolRules00.drl
	at drools.engine.RulesEngine.<init>(RulesEngine.java:33)
	at drools.engine.DecisionEngine.<init>(DecisionEngine.java:22)
	at glucose.tests.AllDroolsRulesTests.setUp(AllDroolsRulesTests.java:33)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at  
sun 
.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: 
39)
	at  
sun 
.reflect 
.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 
25)
	at java.lang.reflect.Method.invoke(Method.java:585)
	at  
org 
.junit 
.internal 
.runners.BeforeAndAfterRunner.invokeMethod(BeforeAndAfterRunner.java:74)
	at  
org 
.junit 
.internal 
.runners.BeforeAndAfterRunner.runBefores(BeforeAndAfterRunner.java:50)
	at  
org 
.junit 
.internal 
.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.java:33)
	at  
org.junit.internal.runners.TestClassRunner.run(TestClassRunner.java:52)
	at  
org 
.eclipse 
.jdt 
.internal 
.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:45)
	at  
org 
.eclipse 
.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
	at  
org 
.eclipse 
.jdt 
.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java: 
460)
	at  
org 
.eclipse 
.jdt 
.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java: 
673)
	at  
org 
.eclipse 
.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java: 
386)
	at  
org 
.eclipse 
.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java: 
196)
Caused by: java.lang.NullPointerException
	at  
org.drools.common.AbstractRuleBase.addPackages(AbstractRuleBase.java: 
429)
	at org.drools.reteoo.ReteooRuleBase.addPackage(ReteooRuleBase.java:394)
	at drools.engine.RulesEngine.readDRLintoPackage(RulesEngine.java:54)
	at drools.engine.RulesEngine.<init>(RulesEngine.java:29)
	... 16 more

If I do put () after the annotation, the DRL file does compile, but I  
do NOT get dynamic behavior.

Thanks.

- Mike


   Can you provide the error messages your are getting?

   Make sure you use at least build #2589, that include the changes.

https://hudson.jboss.org/hudson/job/drools/2589/artifact/trunk/target/

   There is a test case for this on
MiscTest.testPropertyChangeSupportNewAPI().

   []s
   Edson

> Using snapshot from yesterday so presume I have the revision.  The
> following
> DRL file dies a horrible death, being unable to be compiled.  If I  
> comment
> out the tags then it works.  In the rules editor, the word "declare"  
> is not
> highlighted either.  I must be misunderstanding something simple.
>
> package glucose.decision.rules
>
> import glucose.decision.object.GlucoseDecision;
> import glucose.decision.object.GlucoseDecisionState;
>
> declare GlucoseDecision
>       @propertyChangeSupport
> end
>
> declare GlucoseDecisionState
>       @propertyChangeSupport
> end
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20090215/f734c708/attachment.html 


More information about the rules-users mailing list