IBM Support

confirmDraftOrder transaction leads to java.lang.StackOverflowError

Troubleshooting


Problem

Attempts to Invoke confirmDraftOrder and processReturnOrder APIs in single transaction boundary causes StackOverFlowException in IBM Sterling Order Management.

Symptom

StackOverFlowException will occur with ON_SUCCESS event of confirmDraftOrder while invoking processReturnOrder.

Cause

Both the API's are invoking changeOrder.

Resolving The Problem

confirmDraftOrder is a special invocation of changeOrder and processReturnOrder internally invokes changeOrder to commit changes. So both the APIs eventually invoke changeOrder internally. So trying to call processReturnOrder within confirmDraftOrder here is equivalent to calling changeOrder on_success of changeOrder, which should be avoided.

processReturnOrder API can be called as async service with confirmDraftOrder API.

[{"Product":{"code":"SS6PEW","label":"Sterling Order Management"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"Extensions","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"9.3;9.4","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Document Information

Modified date:
16 June 2018

UID

swg21977401