You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Nick Gallardo (JIRA)" <ji...@apache.org> on 2007/02/07 09:07:05 UTC

[jira] Commented: (AXIS2-2125) Asynchronous web service invocation does not return XML response on a SOAP fault

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

Nick Gallardo commented on AXIS2-2125:
--------------------------------------

I've addressed this in a different way just yesterday in a different JIRA.

http://issues.apache.org/jira/browse/AXIS2-2091

The fault that you are returned will be an AxisFault (which was happening already).  The only difference is that now you can get the MessageContext for the response from the AxisFault.

> 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: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org