Well, I'm really sorry...JFL


> From: [EMAIL PROTECTED]> Subject: Re: JESS: dealing with shadow facts having 
> null properties> Date: Fri, 3 Aug 2007 15:23:03 -0400> To: 
> [email protected]> > Look closely at your stack trace: it says "Message: 
> Called method > threw an exception." If you called getCause() on the 
> JessException, > it would return a NullPointerException, and if you looked at 
> that > NPE's stack trace, you'd see it was thrown by the getA() method of > 
> your Test class. Here are the relevant lines from your code:> > private 
> Integer a = null;> ...> public int getA() {> return a;> }> > Note that the 
> type of variable "a" is Integer, but getA() is > returning an int. That means 
> that, due to auto-unboxing, the Java > compiler is going to emit code as if 
> you had written something like> > public int getA() {> return a.intValue();> 
> }> > > and since "a" is null, this line throws a NullPointerException. It's > 
> not Jess's fault if your getter methods throw NPEs when called!> > > > > > On 
> Aug 3, 2007, at 2:51 PM, Skeptic 2000 wrote:> > >> > Hi and thanks a lot for 
> helping, the details are here :> >> > That's the ShadowFact :> >> > public 
> class Test {> >> >> >> >> > private Integer a = null;> >> > private Integer b 
> = 4;> >> >> >> >> > public Test() {> >> >> >> > }> >> >> >> >> > public int 
> getA() {> >> > return a;> >> > }> >> >> >> >> > public int getB() {> >> > 
> return b;> >> > }> >> >> > }> >> > That's the .CLP file :> >> > (defclass 
> Test xxx.yyy.zzz.Test)> >> >> > (defrule testrule> >> > (Test (a ?a) (b ?b))> 
> >> > =>> >> > (printout t "testrule ok")> >> > )> >> > That's the java code 
> :> >> > void functionX() {> > ...> > jessEngine.add(new Test());> > ...> > }> 
> >> > That's the exception :> >> > Jess reported an error in routine 
> DefinstanceList.updateMultipleSlots.> >> > Message: Called method threw an 
> exception.> >> > at 
> jess.DefinstanceList.getSlotValueFromObject(DefinstanceList.java: > > 371)> 
> >> > at jess.DefinstanceList.setAllSlotValuesFromObject > > 
> (DefinstanceList.java:353)> >> > at 
> jess.DefinstanceList.createNewShadowFact(DefinstanceList.java:332)> >> > at 
> jess.DefinstanceList.definstance(DefinstanceList.java:111)> >> > at 
> jess.Rete.definstance(Rete.java:1903)> >> > at 
> jess.Rete.definstance(Rete.java:1883)> >> > at jess.Rete.add(Rete.java:2023)> 
> > ...> >> >> > JFL> >> >> >> >> >> > > From: [EMAIL PROTECTED]> > > Subject: 
> Re: JESS: dealing with shadow facts having null properties> > > Date: Fri, 3 
> Aug 2007 10:48:15 -0400> > > To: [email protected]> > >> > > I can't 
> reproduce anything like this; can you show me a stack trace> > > (run 
> jess.Main with -stacktrace to see a full error trace).> > >> > > On Aug 2, 
> 2007, at 6:12 PM, Skeptic 2000 wrote:> > >> > > >> > > > When I add a shadow 
> fact with a property having a null value, I > > get> > > > an exception (in 
> updateMultiSlot IRRC).> > > >> > > > JFL> > > >> > > > > From: [EMAIL 
> PROTECTED]> > > > > Subject: Re: JESS: dealing with shadow facts having null 
> > > properties> > > > > Date: Thu, 2 Aug 2007 15:57:55 -0400> > > > > To: 
> [email protected]> > > > >> > > > > Jess has been able to handle null 
> properties for a long time; > > 6.1p8> > > > > can handle them, as can the 
> current versions. What problem > > are you> > > > > having, exactly?> > > > 
> >> > > > > On Aug 2, 2007, at 2:19 PM, Skeptic 2000 wrote:> > > > >> > > > > 
> >> > > > > > Hi,> > > > > >> > > > > > I need to add in the working memory 
> some shadow facts with> > > > > > properties whose values are null. 
> Currently, my workaround > > is to> > > > > > use a "NullObject" to prevent 
> Jess from crashing upon > > finding a> > > > > > null value.> > > > > >> > > 
> > > > Is it the recommended way to do it ?> > > > > >> > > > > > JFL> > > > > 
> >> > > > > > Soyez parmi les premiers à essayer Windows Live Mail.> > > > >> 
> > > > > ---------------------------------------------------------> > > > > 
> Ernest Friedman-Hill> > > > > Advanced Software Research Phone: (925) 
> 294-2154> > > > > Sandia National Labs FAX: (925) 294-2234> > > > > PO Box 
> 969, MS 9012 [EMAIL PROTECTED]> > > > > Livermore, CA 94550 
> http://www.jessrules.com> > > > >> > > > > > > 
> --------------------------------------------------------------------> > > > > 
> To unsubscribe, send the words 'unsubscribe jess-users> > > > [EMAIL 
> PROTECTED]'> > > > > in the BODY of a message to [EMAIL PROTECTED], NOT to 
> the > > list> > > > > (use your own address!) List problems? Notify 
> owner-jess-> > > > [EMAIL PROTECTED]> > > > > > > 
> --------------------------------------------------------------------> > > > 
> >> > > >> > > >> > > > Soyez parmi les premiers à essayer Windows Live Mail.> 
> > >> > > ---------------------------------------------------------> > > 
> Ernest Friedman-Hill> > > Advanced Software Research Phone: (925) 294-2154> > 
> > Sandia National Labs FAX: (925) 294-2234> > > PO Box 969, MS 9012 [EMAIL 
> PROTECTED]> > > Livermore, CA 94550 http://www.jessrules.com> > >> > > 
> --------------------------------------------------------------------> > > To 
> unsubscribe, send the words 'unsubscribe jess-users > > [EMAIL PROTECTED]'> > 
> > in the BODY of a message to [EMAIL PROTECTED], NOT to the list> > > (use 
> your own address!) List problems? Notify owner-jess- > > [EMAIL PROTECTED]> > 
> > --------------------------------------------------------------------> > >> 
> >> >> > Soyez parmi les premiers à essayer Windows Live Mail.> > 
> ---------------------------------------------------------> Ernest 
> Friedman-Hill> Advanced Software Research Phone: (925) 294-2154> Sandia 
> National Labs FAX: (925) 294-2234> PO Box 969, MS 9012 [EMAIL PROTECTED]> 
> Livermore, CA 94550 http://www.jessrules.com> > 
> --------------------------------------------------------------------> To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'> in 
> the BODY of a message to [EMAIL PROTECTED], NOT to the list> (use your own 
> address!) List problems? Notify [EMAIL PROTECTED]> 
> --------------------------------------------------------------------> 
_________________________________________________________________
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

Reply via email to