[jbossws-commits] JBossWS SVN: r3702 - in branches/jbossws-2.0: testsuite/src/java/org/jboss/test/ws/jaxws/samples/webmethod and 1 other directory.

jbossws-commits at lists.jboss.org jbossws-commits at lists.jboss.org
Fri Jun 22 10:35:44 EDT 2007


Author: thomas.diesler at jboss.com
Date: 2007-06-22 10:35:44 -0400 (Fri, 22 Jun 2007)
New Revision: 3702

Modified:
   branches/jbossws-2.0/jbossws-core/src/main/java/org/jboss/ws/core/jaxws/client/DispatchSOAPBinding.java
   branches/jbossws-2.0/testsuite/src/java/org/jboss/test/ws/jaxws/samples/webmethod/WebMethodTestCase.java
Log:
[JBWS-1680] Dispatch.invoke does not throw a ProtocolException on Fault

Modified: branches/jbossws-2.0/jbossws-core/src/main/java/org/jboss/ws/core/jaxws/client/DispatchSOAPBinding.java
===================================================================
--- branches/jbossws-2.0/jbossws-core/src/main/java/org/jboss/ws/core/jaxws/client/DispatchSOAPBinding.java	2007-06-22 14:26:20 UTC (rev 3701)
+++ branches/jbossws-2.0/jbossws-core/src/main/java/org/jboss/ws/core/jaxws/client/DispatchSOAPBinding.java	2007-06-22 14:35:44 UTC (rev 3702)
@@ -33,6 +33,7 @@
 import javax.xml.soap.MessageFactory;
 import javax.xml.soap.SOAPElement;
 import javax.xml.soap.SOAPEnvelope;
+import javax.xml.soap.SOAPFault;
 import javax.xml.soap.SOAPMessage;
 import javax.xml.transform.Source;
 import javax.xml.transform.TransformerFactory;
@@ -41,6 +42,7 @@
 import javax.xml.transform.stream.StreamSource;
 import javax.xml.ws.WebServiceException;
 import javax.xml.ws.Service.Mode;
+import javax.xml.ws.soap.SOAPFaultException;
 
 import org.jboss.logging.Logger;
 import org.jboss.ws.core.MessageAbstraction;
@@ -157,6 +159,11 @@
             if (mode == Mode.PAYLOAD)
             {
                SOAPBodyImpl soapBody = (SOAPBodyImpl)resMsg.getSOAPBody();
+               
+               SOAPFault soapFault = soapBody.getFault();
+               if (soapFault != null)
+                  throw new SOAPFaultException(soapFault);
+               
                SOAPElement soapElement = soapBody.getBodyElement();
                retObj = new DOMSource(soapElement);
             }

Modified: branches/jbossws-2.0/testsuite/src/java/org/jboss/test/ws/jaxws/samples/webmethod/WebMethodTestCase.java
===================================================================
--- branches/jbossws-2.0/testsuite/src/java/org/jboss/test/ws/jaxws/samples/webmethod/WebMethodTestCase.java	2007-06-22 14:26:20 UTC (rev 3701)
+++ branches/jbossws-2.0/testsuite/src/java/org/jboss/test/ws/jaxws/samples/webmethod/WebMethodTestCase.java	2007-06-22 14:35:44 UTC (rev 3702)
@@ -43,8 +43,6 @@
 
 import org.jboss.wsf.spi.test.JBossWSTest;
 import org.jboss.wsf.spi.test.JBossWSTestSetup;
-import org.jboss.wsf.spi.utils.DOMUtils;
-import org.w3c.dom.Element;
 
 /**
  * Test the JSR-181 annotation: javax.jws.webmethod
@@ -141,12 +139,6 @@
          " <faultstring>Endpoint {http://webmethod.samples.jaxws.ws.test.jboss.org/}TestEndpointPort does not contain operation meta data for: {http://webmethod.samples.jaxws.ws.test.jboss.org/}noWebMethod</faultstring>" + 
          "</env:Fault>";
 
-      if (isIntegrationNative())
-      {
-         System.out.println("FIXME: [JBWS-1680] Dispatch.invoke does not throw a ProtocolException on Fault");
-         return;
-      }
-      
       Service service = Service.create(wsdlURL, serviceName);
       Dispatch dispatch = service.createDispatch(portName, Source.class, Mode.PAYLOAD);
       try




More information about the jbossws-commits mailing list