[ 
https://issues.apache.org/jira/browse/AXIS2-2125?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12471071
 ] 

footh commented on AXIS2-2125:
------------------------------

Actually, upon reflection, the synchronous call only throws an AxisFault when 
you have the configuration setting "setExceptionToBeThrownOnSOAPFault" set to 
true (which is the default setting).  When it is set to false, the synchronous 
call returns the response which ends up being of type SOAPFaultImpl.

This same thing should occur on the asynchronous call.  When the setting is set 
to "true", then the AxisFault should be returned in the onError method of the 
Callback class per your change.  However, if this setting is "false", I am 
thinking just the onComplete method should be called with the raw response 
being returned.

> Asynchronous web service invocation does not return XML response on a SOAP 
> fault
> --------------------------------------------------------------------------------
>
>                 Key: AXIS2-2125
>                 URL: https://issues.apache.org/jira/browse/AXIS2-2125
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: client-api
>    Affects Versions: 1.1
>         Environment: All
>            Reporter: footh
>            Priority: Minor
>
> When using the asynchronous sendReceiveNonBlocking call to invoke a web 
> service, there is no way to retrieve the XML response if a SOAP Fault occurs. 
>  The XML response is always returned on the blocking invocation methods.  I 
> believe the same should hold for the asynchronous calls - there should always 
> be a way to retreive the raw XML response.
> I sifted through the source code, in particular the 
> NonBlockingInvocationWorker class (I'm looking at the one in 
> OutInAxisOperation).  The block of code that appears to be the problem looks 
> something like this (in the run() method of NonBlockingInvocationWorker):
> if (body.hasFault())
>   ..call the callback's onError method
> else
>   ..call the callback's onComplete method
> It seems the "else" clause should be eliminated and onComplete should always 
> be called whether it is a SOAP Fault or not.  This would result in both 
> onError() and onComplete() being called in the case of a SOAP Fault, but I 
> don't see that as being a big problem as the client can deal with it.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to