I'm no expert but recall there can be problems running "long running"
(subjective) code from AWT's worker thread.
I thought it was good practice to run your "application code" in a worker
thread. This was the first google hit I had on the matter.
http://www.cs.helsinki.fi/u/vihavain/k03/Java/JavathreadsandGUI.html
Cheers,
Mike
_____
From: rules-users-bounces(a)lists.jboss.org
[mailto:rules-users-bounces@lists.jboss.org] On Behalf Of Edson Tirelli
Sent: 08 March 2008 13:15
To: Rules Users List
Subject: Re: [rules-users] Interesting null pointer exception when inserting
afact.
Jason,
Can you please isolate and show us the rule that is creating the problem?
It is happening either in a eval() statement or in a nested property access.
[]s
Edson
2008/3/7, Jason Partyka <Jason.Partyka(a)hightowerinc.com>:
Hi,
This is in relation to drools 4.0.4
I have an interesting problem. I am getting a null pointer exception when I
am inserting a fact into a StatefulSession object. What is odd about this
NPE is that, as far as I can tell (and I have inserted a breakpoint right
before I insert the fact) that all the properties in the object are
initialized, and there are no rules accessing any thing that could be null.
So here's my exception trace (just first few lines to get context):
Exception in thread "AWT-EventQueue-0" org.drools.RuntimeDroolsException:
java.lang.NullPointerException
at org.drools.rule.EvalCondition.isAllowed(EvalCondition.java:76)
at
org.drools.reteoo.EvalConditionNode.assertTuple(EvalConditionNode.java:145)
at
org.drools.reteoo.SingleTupleSinkAdapter.createAndPropagateAssertTuple(Singl
eTupleSinkAdapter.java:55)
at
org.drools.reteoo.LeftInputAdapterNode.assertObject(LeftInputAdapterNode.jav
a:116)
at
org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObject
SinkAdapter.java:22)
at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:153)
at org.drools.reteoo.Rete.assertObject(Rete.java:177)
at org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:192)
at
org.drools.reteoo.ReteooWorkingMemory.doInsert(ReteooWorkingMemory.java:71)
at
org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:88
6)
at
org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:85
8)
at
org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:65
9)
at com.hightower.drools.executablerules.Rules.setTemplate(Rules.java:112)
....
Caused by: java.lang.NullPointerException
at
org.drools.base.mvel.MVELEvalExpression.evaluate(MVELEvalExpression.java:39)
at org.drools.rule.EvalCondition.isAllowed(EvalCondition.java:72)
... 39 more
(that setTemplate method is not a drools template)
Any ideas?
Thanks,
Jason
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
--
Edson Tirelli
JBoss Drools Core Development
Office: +55 11 3529-6000
Mobile: +55 11 9287-5646
JBoss, a division of Red Hat @
www.jboss.com