IBM Support

JR55804: THE DUE DATE OF A LINKED PROCESS FAILS WITH AN UNDECLAREDVARIABLERUNTIME EXCEPTION

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • When a business process definition (BPD) starts a linked
    subprocess, its due date might be specified by using local
    variables. In IBM Business Process Manager (BPM) V8.5.7.0, due
    dates specified with local variables might lead to
    UndeclaredVariableRuntime exceptions:
    
    The following example is a typical stack trace for this issue:
    com.lombardisoftware.server.core.UndeclaredVariableRuntimeExcept
    ion: Undeclared local variable, input or output parameter date2
    found in service "P1" item "UNKNOWN" location "UNKNOWN". You
    must declare it in order to use it.
    at com.lombardisoftware.bpd.runtime.engine.st.
      AbstractBPDSymbolTable.get(AbstractBPDSymbolTable.java:349)
    at com.lombardisoftware.bpd.runtime.engine.st.
      AbstractBPDSymbolTable.get(AbstractBPDSymbolTable.java:333)
    at com.lombardisoftware.bpd.runtime.engine.st.
      AbstractBPDSymbolTable.get(AbstractBPDSymbolTable.java:329)
    at com.lombardisoftware.bpd.runtime.engine.js.
      AbstractBPDSymbolTableScriptable.get
      (AbstractBPDSymbolTableScriptable.java:69)
    at org.mozilla.javascript.ScriptableObject.getProperty
      (ScriptableObject.java:2185)
    at org.mozilla.javascript.ScriptRuntime.getObjectProp
      (ScriptRuntime.java:1492)
    at org.mozilla.javascript.ScriptRuntime.getObjectProp
      (ScriptRuntime.java:1485)
    at org.mozilla.javascript.Interpreter.interpretLoop
      (Interpreter.java:1239)
    at org.mozilla.javascript.Interpreter.interpret
      (Interpreter.java:815)
    at org.mozilla.javascript.InterpretedFunction.call
      (InterpretedFunction.java:109)
    at org.mozilla.javascript.ContextFactory.doTopCall
      (ContextFactory.java:394)
    at com.lombardisoftware.core.script.JavaScriptContextFactory.
      doTopCall(JavaScriptContxtFactory.java:192)
    at org.mozilla.javascript.ScriptRuntime.doTopCall
      (ScriptRuntime.java:3091)
    at org.mozilla.javascript.InterpretedFunction.exec
      (InterpretedFunction.java:120)
    at com.lombardisoftware.core.script.js.JSScript.exec
      (JSScript.java:78)
    at com.lombardisoftware.core.script.js.
      JavaScriptRunner$2.execute(JavaScriptRunner.java:287)
    at com.lombardisoftware.core.script.js.PreparedScope.
      executeWithScope(PreparedScope.java:223)
    at com.lombardisoftware.core.script.js.JavaScriptRunner.
      execute(JavaScriptRunner.java:285)
    at com.lombardisoftware.core.script.js.JavaScriptRunner.
      evalExpression(JavaScriptRunner.java:415)
    at com.lombardisoftware.core.script.js.JavaScriptRunner.
      evalExpression(JavaScriptRunner.java:403)
    at com.lombardisoftware.bpd.runtime.engine.BPDExecutionTreeNode.
      evaluateExpression(BPDExecutionTreeNode.java:806)
    at com.lombardisoftware.bpd.runtime.engine.BPDExecutionTreeNode.
      evaluateExpression(BPDExecutionTreeNode.java:775)
    at com.lombardisoftware.bpd.runtime.engine.BPDExecutionTreeNode.
      evaluateExpression(BPDExecutionTreeNode.java:747)
    at com.lombardisoftware.bpd.runtime.engine.util.DueDateUtil.
      getDueDateCustom(DueDateUtil.java:85)
    at com.lombardisoftware.bpd.runtime.engine.
      FlowObjectExecutionTreeNode.setInstanceDueDate
      (FlowObjectExceutionTreeNode.java:530)
    at com.lombardisoftware.bpd.runtime.engine.
      FlowObjectExecutionTreeNode.doWork
      (FlowObjectExecutionTreeNode.java:428)
    at com.lombardisoftware.bpd.runtime.engine.
      StartEventExecutionTreeNode.doWork
      (StartEcentExecutionTreeNode.java:81)
    at com.lombardisoftware.bpd.runtime.engine.BPDEngine.
      executeTreeNode(BPDEngine.java:413)
    at com.lombardisoftware.bpd.runtime.engine.BPDEngine.
      resume(BPDEngine.java:216)
    ...
    

Local fix

Problem summary

  • Because IBM BPM V8.5.7.0 uses the variables of the top-level BPD
    to evaluate the due date of the actual (linked) process, you
    receive an exception because the actual specification uses a
    local variable from the linked BPD, which is not included in the
    list of variables from the top-level BPD.
    

Problem conclusion

  • A fix that uses the correct symbol table to evaluate the due
    date of a linked subprocess will be included in an upcoming IBM
    Business Process Manager (BPM) V8.5 cumulative maintenance
    vehicle.
    
    To determine whether the cumulative fix is available and
    download it if it is, complete the following steps on Fix
    Central:
    
    1. Select IBM Business Process Manager with your edition from
      the product selector, the installed version to the fix pack
      level, and your platform, and then click Continue.
    
    2. Select Text, enter ?cumulative fix?, and click Continue.
    

Temporary fix

Comments

APAR Information

  • APAR number

    JR55804

  • Reported component name

    BPM STANDARD

  • Reported component ID

    5725C9500

  • Reported release

    857

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-04-25

  • Closed date

    2016-05-19

  • Last modified date

    2016-05-19

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

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

Fix information

  • Fixed component name

    BPM STANDARD

  • Fixed component ID

    5725C9500

Applicable component levels

  • R857 PSY

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSFTDH","label":"IBM Business Process Manager Standard"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"857","Edition":"","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
19 May 2016