You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ng...@apache.org on 2006/10/24 18:19:40 UTC

svn commit: r467371 - /webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/BaseDispatch.java

Author: ngallardo
Date: Tue Oct 24 09:19:39 2006
New Revision: 467371

URL: http://svn.apache.org/viewvc?view=rev&rev=467371
Log:
AXIS2-1477

Rather than catching the exception in the AxisInvocationController, we should be adding the proper fault processing to the BaseDispatch.

Modified:
    webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/BaseDispatch.java

Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/BaseDispatch.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/BaseDispatch.java?view=diff&rev=467371&r1=467370&r2=467371
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/BaseDispatch.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/client/BaseDispatch.java Tue Oct 24 09:19:39 2006
@@ -37,6 +37,8 @@
 import org.apache.axis2.jaxws.handler.PortData;
 import org.apache.axis2.jaxws.impl.AsyncListener;
 import org.apache.axis2.jaxws.message.Message;
+import org.apache.axis2.jaxws.message.MessageException;
+import org.apache.axis2.jaxws.message.XMLFault;
 import org.apache.axis2.jaxws.spi.ServiceDelegate;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -121,6 +123,15 @@
         
         //FIXME: This is temporary until more of the Message model is available
         Message responseMsg = responseMsgCtx.getMessage();
+        try {
+            if (responseMsg.isFault()) {
+                XMLFault fault = responseMsg.getXMLFault();
+                throw ExceptionFactory.makeWebServiceException(fault.getReason().getText());
+            }
+        } catch (MessageException e) {
+            throw ExceptionFactory.makeWebServiceException(e);
+        }
+        
         Object returnObj = getValueFromMessage(responseMsg);
         
         if (log.isDebugEnabled()) {



---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org