All right, let's hope that "business user" is up to write the rules, even
without null checks ;-)
Seriously now: are they up to handling monetary units represented as
floating point numbers? A recent thread has emphasized the problems arising
from tests such as floatVal <= floatConst, and I've been preaching about
possible inconsistencies due to the inherent nature of FP arithmetic, even
for doing sums. BigDecimal is one solution, but I guess your BUs will go
ballistic if you tell them about the consequences...
But here's my last proposal for circumnavigating the NPE issue:
At the point of fact insertion, wrap all "dangerous" bean objects into a
container fact with a single field and insert the container. Write rules
matching the container, testing the wrapped object for field == null and
whatever; if so, change and log; and now insert the wrapped object as a fact
proper. (If necessary, you could even write a single rule for all fact
types, using inspection to determine all dangerous fields.)
-W
2009/5/14 Shabbir Dhari <sdhari(a)hotmail.com>
Thanks to all.
The problem we have is that rules will be code by business user. As a
developer I don’t mind putting null check on every rule. But for business
user its unacceptable for checking null for the same attribute in around 50
rules.
Shannon, can you please elaborate more about your solution or if possible
post some simple code?**
> Date: Wed, 13 May 2009 08:28:53 -0700
> From: greg_barton(a)yahoo.com
> Subject: RE: [rules-users] NullPointerException with Wrapper objects
> To: rules-users(a)lists.jboss.org
>
>
> Well, like Wolfgang said, good luck with that. :) The only rules engine I
know that does this is Tibco BusinessEvents, and it's accomplished by making
a copy of your objects before inserting them into working memory.
>
> >From this forum post I'm guessing JRules doesn't do it:
http://forums.ilog.com/brms/index.php?topic=1439.0
>
> And probably Blaze Advisor doesn't do it either:
>
http://discuss.fico.com/blaze/board/message?board.id=Blaze_Advisor_Users_...
>
> So, I'm thinking you're stuck with having to do null checks.
>
------------------------------
Click Here View photos of singles in your
area<http://a.ninemsn.com.au/b.aspx?URL=http%3A%2F%2Fdating%2Eninemsn%2Ecom%2Eau%2Fsearch%2Fsearch%2Easpx%3Fexec%3Dgo%26tp%3Dq%26gc%3D2%26tr%3D1%26lage%3D18%26uage%3D55%26cl%3D14%26sl%3D0%26dist%3D50%26po%3D1%26do%3D2%26trackingid%3D1046138%26r2s%3D1&_t=773166090&_r=Hotmail_Endtext&_m=EXT>
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users