IBM Support

JR44877: RUNTIME EXCEPTION THROWN FROM A CUSTOM APIEVENTHANDLER DOES NOT STOP THE HUMAN TASK ACTIVITY

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Runtime exception thrown from a custom APIEventHandler does not
    stop the human task activity.
    .
    Consider a case where a custom APIEventHandler throws an runtime
    exception for the inline task of a human task activity in the
    start or create call. The expected behavior is, that the runtime
    exception leadsto an rollback of the current transaction. When
    the transaction is retried the fault handling logic is expected
    to be started -- e.g. fault handler is started or activity is
    put into stop state -- without creating or starting the task
    again. The problem is that the activity and its associated task
    is retried multiple times until a hold queue message is created.
    

Local fix

Problem summary

  • Consider a case where a custom APIEventHandler throws an runtime
    exception for the inline task of a human task activity in the
    start or create call. The expected behavior is, that the
    runtime exception leads to a rollback of the current
    transaction. When the transaction is retried the fault handling
    logic is expected to be started -- e.g. fault handler is
    started or activity is put into stop state -- without creating
    or starting the task again. The problem is that the activity
    and its associated task is retried multiple times until a hold
    queue message is created.
    

Problem conclusion

  • There is a contract between Human Task Manager and BPEL Engine
    that rules in which cases the BPEL Engine should retry multiple
    times (recoverable exception) or retry only once (unrecoverable
    exception). This contract is implemented by the transactional
    context. The problem is caused because Human Task Manager
    and BPEL Engine use different transactional context instances.
    
    The fix ensures that Human Task Manager and BPEL Engine are
    using the same transactional context instance.
    

Temporary fix

  • Not applicable
    

Comments

APAR Information

  • APAR number

    JR44877

  • Reported component name

    BPM ADVANCED

  • Reported component ID

    5725C9400

  • Reported release

    751

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-11-22

  • Closed date

    2015-02-05

  • Last modified date

    2015-02-05

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

    IV26266

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

Fix information

  • Fixed component name

    BPM ADVANCED

  • Fixed component ID

    5725C9400

Applicable component levels

  • R751 PSN

       UP

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSFTN5","label":"IBM Business Process Manager Advanced"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.5.1","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
12 October 2021