IBM Support

RS01733: JAVA.LANG.BOOLEAN BOM ELEMENT USED IN RULEFLOW TRANSITION OR RULE IN BAL LEADS TO A BUILD OR RULEAPP PACKAGING ERROR

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When a BOM contains a class with an attribute of type java.lang.
    Boolean,
    If used in a rule flow transition, shows build error:
    --------------------
    An internal error occurred while building this element. See
    error log for more information.    RULE_FLOW_NAME.rfl
    --------------------
    Associated to Eclipse error log:
    --------------------
    GBRSM0046E: Exception raised while compiling '/RULE_
    PROJECT/rules/RULE_FLOW_NAME.rfl
    --------------------
    and exception:
    --------------------
    java.lang.IllegalArgumentException: Test returns
    a java.lang.Boolean, boolean expected
        at com.ibm.rules.engine.lang.semantics.SemIf.checkTestType(
    SemIf.java:54)
        at com.ibm.rules.engine.lang.semantics.SemIf.<init>(SemIf.
    java:47)
        at com.ibm.rules.engine.lang.semantics.
    SemLanguageFactoryImpl.ifStatement(SemLanguageFactoryImpl.java:
    325)
        at com.ibm.rules.engine.lang.semantics.
    SemLanguageFactoryLink.ifStatement(SemLanguageFactoryLink.java:
    227)
        at com.ibm.rules.brl.code.compiler.rve.SemanticsBuilder.
    buildConditionStatement(SemanticsBuilder.java:1128)
        at com.ibm.rules.brl.code.compiler.rve.SemanticsBuilder.
    buildStatement(SemanticsBuilder.java:1056)
        at com.ibm.rules.brl.code.compiler.rve.SemanticsBuilder.
    buildActions(SemanticsBuilder.java:1045)
        at com.ibm.rules.brl.code.compiler.rve.SemanticsBuilder.
    buildFlowTask(SemanticsBuilder.java:690)
        at com.ibm.rules.brl.code.compiler.rve.SemanticsBuilder.
    buildTask(SemanticsBuilder.java:659)
        at com.ibm.rules.brl.code.compiler.rve.SemanticsBuilder.
    buildRuleflow(SemanticsBuilder.java:605)
        at com.ibm.rules.brl.code.compiler.rve.SemanticsBuilder.
    buildRuleflow(SemanticsBuilder.java:280)
        at com.ibm.rules.studio.rve.builder.RVERuleCompiler.
    compileMainRuleFlow(RVERuleCompiler.java:547)
        at com.ibm.rules.studio.rve.builder.RVERuleCompiler.
    compileMainRuleFlow(RVERuleCompiler.java:499)
        at com.ibm.rules.studio.rve.builder.RVERuleCompiler.
    compileProjectElement(RVERuleCompiler.java:422)
        at com.ibm.rules.studio.rve.builder.RVERuleCompiler.compile(
    RVERuleCompiler.java:272)
        at ilog.rules.studio.model.builder.
    IncrementalRuleProjectBuilder.compile(
    IncrementalRuleProjectBuilder.java:1064)
        at ilog.rules.studio.model.builder.
    IncrementalRuleProjectBuilder.build(
    IncrementalRuleProjectBuilder.java:1015)
        at ilog.rules.studio.model.builder.
    IncrementalRuleProjectBuilder.build(
    IncrementalRuleProjectBuilder.java:310)
        at org.eclipse.core.internal.events.BuildManager$2.run(
    BuildManager.java:629)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:
    42)
        at org.eclipse.core.internal.events.BuildManager.basicBuild(
    BuildManager.java:172)
        at org.eclipse.core.internal.events.BuildManager.basicBuild(
    BuildManager.java:203)
        at org.eclipse.core.internal.events.BuildManager$1.run(
    BuildManager.java:255)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:
    42)
        at org.eclipse.core.internal.events.BuildManager.basicBuild(
    BuildManager.java:258)
        at org.eclipse.core.internal.events.BuildManager.
    basicBuildLoop(BuildManager.java:311)
        at org.eclipse.core.internal.events.BuildManager.build(
    BuildManager.java:343)
        at org.eclipse.core.internal.events.AutoBuildJob.doBuild(
    AutoBuildJob.java:144)
        at org.eclipse.core.internal.events.AutoBuildJob.run(
    AutoBuildJob.java:242)
    --------------------
    if used in action rule or decision table, ruleapp packaging
    fails while packaging the ruleset with error message:
    --------------------
    GBRSE0199E: An unexpected error occurred while adding the
    Rule project 'RULE_PROJECT' to the ruleset archives of the
    RuleApp project 'RULEAPP_PROJECT_NAME'.
    Please consult the Details section below and the Error Log view
    for additional information about.
    ilog.jit.code.IlxJITBadCodeException: null in com.ibm.rules.
    generated.ruleflow.claimPrice$003eDataValidation.SEQEngine.rule_
    0
    --------------------
    and in the Eclipse error log, root exception
    --------------------
    Caused by: java.lang.NullPointerException
        at ilog.jit.code.IlxJITCodeFactory.makeCast(
    IlxJITCodeFactory.java:921)
        at ilog.jit.code.IlxJITCodeFactory.makeInvoke(
    IlxJITCodeFactory.java:1498)
        at ilog.jit.coding.IlxJITExprGetCoder.visit(
    IlxJITExprGetCoder.java:851)
        at ilog.jit.lang.IlxJITInvokeExpr.accept(IlxJITInvokeExpr.
    java:171)
        at ilog.jit.coding.IlxJITExprGetCoder.codeExprGet(
    IlxJITExprGetCoder.java:133)
        at ilog.jit.coding.IlxJITCoder.codeExprGet(IlxJITCoder.java:
    242)
        at ilog.jit.coding.IlxJITStatCoder.codeExprGet(
    IlxJITStatCoder.java:160)
        at ilog.jit.coding.IlxJITStatCoder.visit(IlxJITStatCoder.
    java:799)
        at ilog.jit.lang.IlxJITReturnStat.accept(IlxJITReturnStat.
    java:148)
        at ilog.jit.coding.IlxJITStatCoder.code(IlxJITStatCoder.
    java:297)
        at ilog.jit.coding.IlxJITStatCoder.visit(IlxJITStatCoder.
    java:334)
        at ilog.jit.lang.IlxJITBlockStat.accept(IlxJITBlockStat.
    java:119)
        at ilog.jit.coding.IlxJITStatCoder.code(IlxJITStatCoder.
    java:297)
        at ilog.jit.coding.IlxJITStatCoder.code(IlxJITStatCoder.
    java:283)
        at ilog.jit.coding.IlxJITCoder.code(IlxJITCoder.java:202)
        at ilog.jit.asm.IlxASMCodeTranslator.translateCode(
    IlxASMCodeTranslator.java:94)
        at ilog.jit.asm.IlxASMMethodTranslator.translateMethod(
    IlxASMMethodTranslator.java:72)
        ... 47 more
    --------------------
    

Local fix

  • Force the outboxing of the Boolean by adding "is true" to the
    BAL condition expressed as "<the object> is <the Boolean>"
    

Problem summary

  • Some Boolean values in an expression are not unboxed leading to
    this exception during the evaluation of the condition
    

Problem conclusion

  • the code is fixed
    

Temporary fix

Comments

APAR Information

  • APAR number

    RS01733

  • Reported component name

    WS DECISION SVR

  • Reported component ID

    5725B6901

  • Reported release

    851

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2014-09-04

  • Closed date

    2014-09-12

  • Last modified date

    2014-09-12

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Modules/Macros

  • 999
    

Fix information

  • Fixed component name

    WS DECISION SVR

  • Fixed component ID

    5725B6901

Applicable component levels

  • R851 PSY

       UP

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SUPPORT","label":"IBM Worldwide Support"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.5.1","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
09 February 2022