[jboss-jira] [JBoss JIRA] (DROOLS-4381) BigDecimal and primitive comparison error in executable-model build

Toshiya Kobayashi (Jira) issues at jboss.org
Tue Jul 30 23:05:00 EDT 2019


Toshiya Kobayashi created DROOLS-4381:
-----------------------------------------

             Summary: BigDecimal and primitive comparison error in executable-model build
                 Key: DROOLS-4381
                 URL: https://issues.jboss.org/browse/DROOLS-4381
             Project: Drools
          Issue Type: Bug
          Components: executable model
    Affects Versions: 7.24.0.Final
            Reporter: Toshiya Kobayashi
            Assignee: Luca Molteni


When you compare BigDecimal (but the field type is Object) with primitive int,

{noformat}
import org.drools.modelcompiler.domain.Result;
rule "rule1"
when
    $r : Result( value <= 20 )
then
end
{noformat}

executable-model build fails.

{noformat}
[ERROR] Failures: 
[ERROR]   CompilerTest.testBigDecimalIntCoercion:1901->BaseModelTest.getKieSession:99->BaseModelTest.getKieSession:103->BaseModelTest.getKieContainer:107->BaseModelTest.getKieContainer:114->BaseModelTest.createKieBuilder:125->BaseModelTest.createKieBuilder:152 [Message [id=1, level=ERROR, path=src/main/java/defaultpkg/RulesC992C95703C3473926B5B025D30097DARuleMethods0.java, line=24, column=122
   text=no suitable method found for lessOrEqualNumbers(java.lang.Object,int)
    method org.drools.modelcompiler.util.EvaluationUtil.lessOrEqualNumbers(java.lang.Number,java.lang.Number) is not applicable
      (argument mismatch; java.lang.Object cannot be converted to java.lang.Number)
    method org.drools.modelcompiler.util.EvaluationUtil.lessOrEqualNumbers(java.lang.Long,java.lang.Long) is not applicable
      (argument mismatch; java.lang.Object cannot be converted to java.lang.Long)], Message [id=2, level=ERROR, path=src/main/java/defaultpkg/RulesC992C95703C3473926B5B025D30097DARuleMethods0.java, line=0, column=0
   text=Java source of src/main/java/defaultpkg/RulesC992C95703C3473926B5B025D30097DARuleMethods0.java in error:
{noformat}

Non executable-model works with the rule.



--
This message was sent by Atlassian Jira
(v7.12.1#712002)


More information about the jboss-jira mailing list