Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-5889

Assignment to BigDecimal type property causes compilation errors in executable model.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • None
    • None
    • executable model
    • 2020 Week 49-51 (from Nov 30)
    • Hide
      $ unzip reproducer_02801729_3a.zip 
      $ cd reproducer_02801729_3a
      $ mvn clean compile exec:exec -DgenerateModel=YES
          :
          :
      [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile-1) @ reproducer_02801729_3a ---
      [INFO] Changes detected - recompiling the module!
      [INFO] Compiling 6 source files to /test/reproducer_02801729_3a/target/classes
      [INFO] -------------------------------------------------------------
      [ERROR] COMPILATION ERROR : 
      [INFO] -------------------------------------------------------------
      [ERROR] /test/reproducer_02801729_3a/target/generated-sources/drools-model-compiler/main/java/com/example/reproducer/P23/LambdaConsequence23B3ED62B695E9AEA44284D670FC4A7C.java:[20,13] weight has private access in com.example.reproducer.Bus
      [ERROR] /test/reproducer_02801729_3a/target/generated-sources/drools-model-compiler/main/java/com/example/reproducer/P23/LambdaConsequence23B3ED62B695E9AEA44284D670FC4A7C.java:[20,23] incompatible types: int cannot be converted to java.math.BigDecimal
      [INFO] 2 errors 
      [INFO] -------------------------------------------------------------
          :
          :
      
      Show
      $ unzip reproducer_02801729_3a.zip $ cd reproducer_02801729_3a $ mvn clean compile exec:exec -DgenerateModel=YES : : [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile-1) @ reproducer_02801729_3a --- [INFO] Changes detected - recompiling the module! [INFO] Compiling 6 source files to /test/reproducer_02801729_3a/target/classes [INFO] ------------------------------------------------------------- [ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] /test/reproducer_02801729_3a/target/generated-sources/drools-model-compiler/main/java/com/example/reproducer/P23/LambdaConsequence23B3ED62B695E9AEA44284D670FC4A7C.java:[20,13] weight has private access in com.example.reproducer.Bus [ERROR] /test/reproducer_02801729_3a/target/generated-sources/drools-model-compiler/main/java/com/example/reproducer/P23/LambdaConsequence23B3ED62B695E9AEA44284D670FC4A7C.java:[20,23] incompatible types: int cannot be converted to java.math.BigDecimal [INFO] 2 errors [INFO] ------------------------------------------------------------- : :
    • Undefined
    • NEW
    • NEW
    • ---
    • ---

      Compiling a rule like (*1) which is described in MVEL dialect and contains an assignment statement to BigDecimal type property with executable rule models enabled, compilation errors like (*2) occur.

      (*1)

      package com.example.reproducer
      
      import com.example.reproducer.Bus
      
      dialect "mvel"
      
      rule "bus3a"
          when
              $bus : Bus()
          then
              modify($bus) {
                  weight = 13000
              }
              System.out.println("***** " + $bus + ", weight = " + $bus.weight);
      end
      

      $bus.weight is a BigDecimal type property.

      (*2)

      [ERROR] /test/reproducer_02801729_3a/target/generated-sources/drools-model-compiler/main/java/com/example/reproducer/P23/LambdaConsequence23B3ED62B695E9AEA44284D670FC4A7C.java:[20,13] weight has private access in com.example.reproducer.Bus
      [ERROR] /test/reproducer_02801729_3a/target/generated-sources/drools-model-compiler/main/java/com/example/reproducer/P23/LambdaConsequence23B3ED62B695E9AEA44284D670FC4A7C.java:[20,23] incompatible types: int cannot be converted to java.math.BigDecimal
      

       

              lmolteni@redhat.com Luca Molteni
              lmolteni@redhat.com Luca Molteni
              Daniel Rosa Daniel Rosa
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: