[rules-users] NullPointerException with Wrapper objects
Wolfgang Laun
wolfgang.laun at gmail.com
Thu May 14 02:02:19 EDT 2009
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 at 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 at yahoo.com
> > Subject: RE: [rules-users] NullPointerException with Wrapper objects
> > To: rules-users at 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_Forum&message.id=591
> >
> > 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 at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20090514/5a8b6b7c/attachment.html
More information about the rules-users
mailing list