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

Reply via email to