TimeoutException instead of direct failure while accessing WS
-------------------------------------------------------------
Key: ODE-925
URL: https://issues.apache.org/jira/browse/ODE-925
Project: ODE
Issue Type: Bug
Components: BPEL Runtime
Affects Versions: 1.3.5
Environment: Windows XP, Tomcat 7.0.6
Reporter: Vitaliy Tkachenko
While having immediate HTTP error accessing external WS (e.g. endpoint domain
is not resolved, no TCP connection available) ODE anyway waits for the
[timeout] time (default is 2 minutes) and returns general fault
TimeoutException with no details on the fault cause (SOAP response is "Timeout
or execution error when waiting for response to MEX").
User may want to recognize such kinds of problems and try to recall the service
but with current approach we need to wait for 2 minutes (!!!) when the fault is
already known.
It's preferable to implement specific immediate errors instead like ones
accordingly to "http://schemas.oracle.com/bpel/extension" BPEL extensions.
To reproduce:
1. Create any BPEL process calling external WS in it (e.g. some Echo service
over the Axis2 deployed on the same Tomcat). Deploy to ODE.
2. Run the process using SoapUI. Make sure it's able to successfully execute.
3. Stop that service, run the ODE BPEL process again.
Now you can find immediate failure in the ODE log (e.g.
"org.apache.ode.axis2.ExternalService -- Error sending message" with
corresponding cause). But ODE wait for 2 minutes and only then returns
TimeoutException with SOAP response "Timeout or execution error when waiting
for response to MEX".
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira