I have to admin the WS2 BPS (3.6.0) is not very revealing about internal exceptions. There's a small chapter in the documentation about troubleshooting, however this setup logs only messages passed to the endpoints.
Questions:
- is there way to see internal exceptions thrown during the BPEL execution) wether handled or unhandled? (such as errors in the expressions or scripts). Maybe on the Apache-ODE level?
- is there any way to access the fault caught by the "catchAll" fault handler?
Thank you all for any hint
1) One way troubleshoot is, enable BPEL Runtime debug logs, where you can see the execution flow.
log4j.logger.org.apache.ode.bpel.runtime=DEBUG
If you need further information, you can enable debug logs for ODE engine as well.
log4j.logger.org.apache.ode.bpel.engine=DEBUG
2) There is no OTB way to achieve this. This is a limitation in BPEL 2.0 spec. In BPEL 2.0, you can catch only faults that are defined in the partner service WSDL. Additionally, you can assign a variable for the error message. From that, you can access information about the fault.
But CatchAll doesn't associate with a variable. It is a generic fault handler.
I would suggest using flag based solution to handle errors within catchall. (That is what I have seen in most of the solutions.)