[rules-users] Condition syntax to access Map

Mark Proctor mproctor at codehaus.org
Thu Jul 28 07:53:43 EDT 2011


On 28/07/2011 08:26, bolsover wrote:
> Mark
>
> Thanks for the info - although it was not actually the solution to my
> problem, it prompted me to look again at my assertion that there were not
> any null values.  In actual fact answerData[0] was null ( I should have been
> checking for answerData[100]) and this was causing the error.
>
> You modified syntax is much tidier; I'm now using the following format:
>
> $a : Answer(answerData[0] != null&&  answerData[0].value_str == "Valves")
I'm not sure it's supported in our parser, but I think we should do it - 
either add support for it, or make it implement to the "." accessor. 
MVEL supports null safe navigation, which means it'll return false if a 
null value is returned from an accessor.
http://mvel.codehaus.org/MVEL+2.0+Property+Navigation

"Sometimes you have property expressions which may contain a null 
element, requiring you to create a null-check. You can simplify this by 
using the null-safe operator:

user.?manager.name

This is functionally equivalent to writing:

if  (user.manager !=null) {return  user.manager.name; }else  {return  null; }"



  I doubt there is a time when someone wants a nullpointer to happen. So 
maybe we should build this in as default into expressions. I guess the 
only time we shouldn't is if people know it will enver be null and don't 
want the small overad for the null check.

What do people think?

Mark
>
> This prevents the prior null pointer exception.
>
> Thanks for your input.
>
> David
>
> --
> View this message in context: http://drools.46999.n3.nabble.com/Condition-syntax-to-access-Map-tp3204429p3205961.html
> Sent from the Drools: User forum mailing list archive at Nabble.com.
> _______________________________________________
> 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/20110728/b90aa65a/attachment.html 


More information about the rules-users mailing list