[ 
https://issues.apache.org/jira/browse/OFBIZ-6291?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14510685#comment-14510685
 ] 

Adrian Crum commented on OFBIZ-6291:
------------------------------------

Mini-language is a scripting language. One of the nice things about scripting 
languages is you can compare things like decimal values without worrying about 
the underlying implementation. That is what the current implementation does: 2 
== 2.0 == 2.000000.

If we were to compare BigDecimal precision, then we lose the scripting 
abstraction, PLUS pretty much everything that uses Mini-language will break.

If you need to compare BigDecimal precision, then you can use a scriptlet: 
groovy:fooBigDecimal.equals(barBigDecimal).


> Update code to check for types rather than throw ClassCastException
> -------------------------------------------------------------------
>
>                 Key: OFBIZ-6291
>                 URL: https://issues.apache.org/jira/browse/OFBIZ-6291
>             Project: OFBiz
>          Issue Type: Improvement
>          Components: framework
>    Affects Versions: Trunk
>            Reporter: Gareth Carter
>            Priority: Trivial
>         Attachments: LocalizedConverters.patch, minilang_compare.patch, 
> minilang_compare_r1675655.patch
>
>
> framework/minilang/src/org/ofbiz/minilang/method/conditional/Compare.java
> framework/base/src/org/ofbiz/base/util/ObjectType.java
> framework/minilang/src/org/ofbiz/minilang/MiniLangUtil.java
> all throw ClassCastExceptions and are ignored instead of checking types
> This caused issues in debugging when adding a ClassCastException breakpoint



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to