When Implementing A "Catch all" Boundary Event, The Error Object Is Not Exposed For Using In The Data Association (Doc ID 1378273.1)

Last updated on MARCH 08, 2017

Applies to:

Oracle Business Process Management Suite - Version 11.1.1.5.0 to 11.1.1.5.0 [Release 11gR1]
Information in this document applies to any platform.
***Checked for relevance on 29-May-2013***

Symptoms

The creation of an Event Subprocess that implements an 'Error' type allows the user to define exception events as either business exceptions, system exceptions or user defined exceptions.

When you try to use the 'Catch all system exceptions' and subsequently try to obtain the error stack trace by using the ora:getFaultAsString() function, no exception data is returned.

You could define individual SystemFaults (BindingFault, RemoteFault, etc.) but you should be able just to define at 'Catch All' level and obtain the fault stack trace by executing the ora:getFaultAsString() function.

When you use the ora:getFaultAsString() function it causes initially an internal error. However, when you actually do address the internal error issue, you still do not get a proper stack trace.

Internal Error example:

<auditQueryPayload auditId="28211" ciKey="170053">
<dataState>
<dataObject name="FaultMessage" isBusinessIndicator="false">
<value> com.oracle.bpel.client.BPELFault: faultName: {{http://schemas.oracle.com/bpel/extension}subLanguageExecutionFault} messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage} parts: {{ summary=<summary>XPath expression failed to execute. An error occurs while processing the XPath expression; the expression is ora:getFaultAsString(). The XPath expression failed to execute; the reason was: Variant not found. The variable "__fault" is not declared in the current scope. All variables must be declared in the scope before being accessed. This was an internal error. The flow was not generated correctly by the BPMN compiler. Contact Oracle Support Services. Provide the error message, the composite source, and the exception stack trace in the log files (with the logging level set to debug mode). . Check the detailed root cause described in the exception message text and verify that the XPath query is correct. </summary> ,code=<code>XPathExecutionError</code>} cause: {XPath expression failed to execute. An error occurs while processing the XPath expression; the expression is ora:getFaultAsString(). The XPath expression failed to execute; the reason was: Variant not found. The variable "__fault" is not declared in the current scope. All variables must be declared in the scope before being accessed. This was an internal error. The flow was not generated correctly by the BPMN compiler. Contact Oracle Support Services. Provide the error message, the composite source, and the exception stack trace in the log files (with the logging level set to debug mode). . Check the detailed root cause described in the exception message text and verify that the XPath query is correct. } </value>
</dataObject>
</dataState>
</auditQueryPayload>


The BindingFault and RemoteFault System Faults (when creating them individually) do contain the required information but whatever exceptionlog generation programs they execute are not available in the Data Associations. Only the ora:getFaultAsString and ora:getFaultName functions are available, and neither output an error stack.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms