You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by bi...@apache.org on 2008/05/29 03:53:19 UTC

svn commit: r661175 - in /cxf/trunk: rt/core/src/main/java/org/apache/cxf/wsdl11/ rt/core/src/test/java/org/apache/cxf/wsdl11/ rt/core/src/test/resources/org/apache/cxf/wsdl11/ rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/support/ systests/src/...

Author: bimargulies
Date: Wed May 28 18:53:19 2008
New Revision: 661175

URL: http://svn.apache.org/viewvc?rev=661175&view=rev
Log:
Make the strange Sun OpenOffice SwA WSDL work when pushed through the 
entire wsdl2java->ServiceWSDLBuilder->DynamicClientFactory universe.

Added:
    cxf/trunk/rt/core/src/test/resources/org/apache/cxf/wsdl11/no_body_parts.wsdl   (with props)
Modified:
    cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java
    cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/WSDLManagerImpl.java
    cxf/trunk/rt/core/src/test/java/org/apache/cxf/wsdl11/ServiceWSDLBuilderTest.java
    cxf/trunk/rt/core/src/test/java/org/apache/cxf/wsdl11/WSDLServiceBuilderTest.java
    cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBeanTest.java
    cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxws/JaxWsDynamicClientTest.java
    cxf/trunk/testutils/src/main/java/org/apache/cxf/no_body_parts/NoBodyPartsImpl.java

Modified: cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java?rev=661175&r1=661174&r2=661175&view=diff
==============================================================================
--- cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java (original)
+++ cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/ServiceWSDLBuilder.java Wed May 28 18:53:19 2008
@@ -71,6 +71,7 @@
 import org.apache.cxf.service.model.EndpointInfo;
 import org.apache.cxf.service.model.FaultInfo;
 import org.apache.cxf.service.model.InterfaceInfo;
+import org.apache.cxf.service.model.MessageInfo;
 import org.apache.cxf.service.model.MessagePartInfo;
 import org.apache.cxf.service.model.OperationInfo;
 import org.apache.cxf.service.model.SchemaInfo;
@@ -405,6 +406,33 @@
     }
 
     protected void buildService(ServiceInfo serviceInfo) {
+        
+        Map<QName, MessageInfo> messages = serviceInfo.getMessages();
+        for (Map.Entry<QName, MessageInfo> mie : messages.entrySet()) {
+            Message message = definition.createMessage();
+            message.setUndefined(false);
+            message.setQName(mie.getKey());
+            for (MessagePartInfo mpi : mie.getValue().getMessageParts()) {
+                Part part = definition.createPart();
+                boolean elemental = mpi.isElement();
+                // RFSB will turn on isElement bogusly.
+                if (elemental 
+                    && null == serviceInfo.getXmlSchemaCollection().
+                        getElementByQName(mpi.getElementQName())) {
+                    elemental = false;
+                }
+                if (elemental) {
+                    part.setElementName(mpi.getElementQName());
+                } else {
+                    part.setTypeName(mpi.getTypeQName());
+                }
+                part.setName(mpi.getName().getLocalPart());
+                message.addPart(part);
+            }
+            
+            definition.addMessage(message);
+        }
+        
         Service serv = definition.createService();
         serv.setQName(serviceInfo.getName());
         addNamespace(serviceInfo.getName().getNamespaceURI());

Modified: cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/WSDLManagerImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/WSDLManagerImpl.java?rev=661175&r1=661174&r2=661175&view=diff
==============================================================================
--- cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/WSDLManagerImpl.java (original)
+++ cxf/trunk/rt/core/src/main/java/org/apache/cxf/wsdl11/WSDLManagerImpl.java Wed May 28 18:53:19 2008
@@ -196,13 +196,13 @@
     private Definition loadDefinition(String url) throws WSDLException {
         WSDLReader reader = factory.newWSDLReader();
         reader.setFeature("javax.wsdl.verbose", false);
+        reader.setFeature("javax.wsdl.importDocuments", true);
         reader.setExtensionRegistry(registry);
         CatalogWSDLLocator catLocator = 
             new CatalogWSDLLocator(url, OASISCatalogManager.getCatalogManager(bus));
         ResourceManagerWSDLLocator wsdlLocator = new ResourceManagerWSDLLocator(url,
                                                                                 catLocator,
                                                                                 bus);
-        
         Definition def = reader.readWSDL(wsdlLocator);
         synchronized (definitionsMap) {
             definitionsMap.put(url, def);

Modified: cxf/trunk/rt/core/src/test/java/org/apache/cxf/wsdl11/ServiceWSDLBuilderTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/test/java/org/apache/cxf/wsdl11/ServiceWSDLBuilderTest.java?rev=661175&r1=661174&r2=661175&view=diff
==============================================================================
--- cxf/trunk/rt/core/src/test/java/org/apache/cxf/wsdl11/ServiceWSDLBuilderTest.java (original)
+++ cxf/trunk/rt/core/src/test/java/org/apache/cxf/wsdl11/ServiceWSDLBuilderTest.java Wed May 28 18:53:19 2008
@@ -29,6 +29,7 @@
 import javax.wsdl.Message;
 import javax.wsdl.Operation;
 import javax.wsdl.Output;
+import javax.wsdl.Part;
 import javax.wsdl.PortType;
 import javax.wsdl.Service;
 import javax.wsdl.Types;
@@ -53,14 +54,14 @@
 import org.easymock.classextension.IMocksControl;
 import org.junit.After;
 import org.junit.Assert;
-import org.junit.Before;
 import org.junit.Test;
 
 public class ServiceWSDLBuilderTest extends Assert {
 
     private static final Logger LOG = LogUtils.getLogger(ServiceWSDLBuilderTest.class);
     private static final String WSDL_PATH = "hello_world.wsdl";
-    
+    private static final String NO_BODY_PARTS_WSDL_PATH = "no_body_parts.wsdl";
+
     private Definition def;
     private Definition newDef;
     private Service service;
@@ -74,10 +75,8 @@
     private DestinationFactoryManager destinationFactoryManager;
     private DestinationFactory destinationFactory;
     
-    @Before
-    public void setUp() throws Exception {
-  
-        String wsdlUrl = getClass().getResource(WSDL_PATH).toString();
+    private void setupWSDL(String wsdlPath) throws Exception {
+        String wsdlUrl = getClass().getResource(wsdlPath).toString();
         LOG.info("the path of wsdl file is " + wsdlUrl);
         WSDLFactory wsdlFactory = WSDLFactory.newInstance();
         WSDLReader wsdlReader = wsdlFactory.newWSDLReader();
@@ -122,8 +121,19 @@
         newDef = null;
     }
     
+    @Test
+    public void testNoBodyParts() throws Exception {
+        setupWSDL(NO_BODY_PARTS_WSDL_PATH);
+        QName messageName = new QName("urn:org:apache:cxf:no_body_parts/wsdl",
+            "operation1Request");
+        Message message = newDef.getMessage(messageName);
+        Part part = message.getPart("mimeAttachment");
+        assertNotNull(part.getTypeName());
+    }
+    
     @Test    
     public void testDefinition() throws Exception {
+        setupWSDL(WSDL_PATH);
         assertEquals(newDef.getTargetNamespace(), "http://apache.org/hello_world_soap_http");
         Service serv = newDef.getService(new QName("http://apache.org/hello_world_soap_http",
                                                    "SOAPService"));
@@ -133,6 +143,7 @@
     
     @Test
     public void testPortType() throws Exception {
+        setupWSDL(WSDL_PATH);
         assertEquals(1, newDef.getPortTypes().size());
         PortType portType = (PortType)newDef.getPortTypes().values().iterator().next();
         assertNotNull(portType);
@@ -142,6 +153,7 @@
     
     @Test
     public void testSayHiOperation() throws Exception {
+        setupWSDL(WSDL_PATH);
         PortType portType = newDef.getPortType(new QName(newDef.getTargetNamespace(), 
             "Greeter"));
         Collection<Operation> operations =  
@@ -176,6 +188,7 @@
     
     @Test
     public void testGreetMeOperation() throws Exception {
+        setupWSDL(WSDL_PATH);
         PortType portType = newDef.getPortType(new QName(newDef.getTargetNamespace(), 
             "Greeter"));
         Operation greetMe = portType.getOperation("greetMe", "greetMeRequest", "greetMeResponse");
@@ -205,6 +218,7 @@
     
     @Test
     public void testGreetMeOneWayOperation() throws Exception {
+        setupWSDL(WSDL_PATH);
         PortType portType = newDef.getPortType(new QName(newDef.getTargetNamespace(), 
             "Greeter"));
         Operation greetMeOneWay = portType.getOperation("greetMeOneWay", "greetMeOneWayRequest", null);
@@ -226,6 +240,7 @@
     
     @Test
     public void testPingMeOperation() throws Exception {
+        setupWSDL(WSDL_PATH);
         PortType portType = newDef.getPortType(new QName(newDef.getTargetNamespace(), 
             "Greeter"));
         Operation pingMe = portType.getOperation("pingMe", "pingMeRequest", "pingMeResponse");
@@ -264,6 +279,7 @@
     
     @Test
     public void testBinding() throws Exception {
+        setupWSDL(WSDL_PATH);
         assertEquals(newDef.getBindings().size(), 1);
         Binding binding = newDef.getBinding(new QName(newDef.getTargetNamespace(), "Greeter_SOAPBinding"));
         assertNotNull(binding);
@@ -272,6 +288,7 @@
     
     @Test
     public void testSchemas() throws Exception {
+        setupWSDL(WSDL_PATH);
         Types types = newDef.getTypes();
         assertNotNull(types);
         Collection<ExtensibilityElement> schemas = 

Modified: cxf/trunk/rt/core/src/test/java/org/apache/cxf/wsdl11/WSDLServiceBuilderTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/test/java/org/apache/cxf/wsdl11/WSDLServiceBuilderTest.java?rev=661175&r1=661174&r2=661175&view=diff
==============================================================================
--- cxf/trunk/rt/core/src/test/java/org/apache/cxf/wsdl11/WSDLServiceBuilderTest.java (original)
+++ cxf/trunk/rt/core/src/test/java/org/apache/cxf/wsdl11/WSDLServiceBuilderTest.java Wed May 28 18:53:19 2008
@@ -67,7 +67,6 @@
 import org.easymock.classextension.EasyMock;
 import org.easymock.classextension.IMocksControl;
 import org.junit.Assert;
-import org.junit.Before;
 import org.junit.Test;
 
 public class WSDLServiceBuilderTest extends Assert {
@@ -77,6 +76,7 @@
     private static final String BARE_WSDL_PATH = "hello_world_bare.wsdl";
     private static final String IMPORT_WSDL_PATH = "hello_world_schema_import.wsdl";
     private static final String MULTIPORT_WSDL_PATH = "hello_world_multiporttype.wsdl";
+    private static final String NO_BODY_PARTS_WSDL_PATH = "no_body_parts.wsdl";
     
     private static final String EXTENSION_NAMESPACE = "http://cxf.apache.org/extension/ns";
     private static final QName EXTENSION_ATTR_BOOLEAN = new QName(EXTENSION_NAMESPACE, "booleanAttr");
@@ -98,8 +98,7 @@
 
     private DestinationFactoryManager destinationFactoryManager;
 
-    @Before
-    public void setUp() throws Exception {
+    public void setUpBasic() throws Exception {
         setUpWSDL(WSDL_PATH, 0);
     }
 
@@ -160,6 +159,7 @@
 
     @Test
     public void testServiceInfo() throws Exception {
+        setUpBasic();
         assertEquals("SOAPService", serviceInfo.getName().getLocalPart());
         assertEquals("http://apache.org/hello_world_soap_http", serviceInfo.getName().getNamespaceURI());
         assertEquals("http://apache.org/hello_world_soap_http", serviceInfo.getTargetNamespace());
@@ -177,12 +177,14 @@
 
     @Test
     public void testInterfaceInfo() throws Exception {
+        setUpBasic();
         assertEquals("Greeter", serviceInfo.getInterface().getName().getLocalPart());
         control.verify();
     }
 
     @Test
     public void testOperationInfo() throws Exception {
+        setUpBasic();
         QName name = new QName(serviceInfo.getName().getNamespaceURI(), "sayHi");
         assertEquals(4, serviceInfo.getInterface().getOperations().size());
         OperationInfo sayHi = serviceInfo.getInterface().getOperation(
@@ -262,6 +264,7 @@
 
     @Test
     public void testBindingInfo() throws Exception {
+        setUpBasic();
         BindingInfo bindingInfo = null;
         assertEquals(1, serviceInfo.getBindings().size());
         bindingInfo = serviceInfo.getBindings().iterator().next();
@@ -274,6 +277,7 @@
 
     @Test
     public void testBindingOperationInfo() throws Exception {
+        setUpBasic();
         BindingInfo bindingInfo = null;
         bindingInfo = serviceInfo.getBindings().iterator().next();
         Collection<BindingOperationInfo> bindingOperationInfos = bindingInfo.getOperations();
@@ -305,6 +309,7 @@
 
     @Test
     public void testBindingMessageInfo() throws Exception {
+        setUpBasic();
         BindingInfo bindingInfo = null;
         bindingInfo = serviceInfo.getBindings().iterator().next();
 
@@ -362,7 +367,8 @@
     }
 
     @Test
-    public void testSchema() {
+    public void testSchema() throws Exception {
+        setUpBasic();
         SchemaCollection schemas = serviceInfo.getXmlSchemaCollection();
         assertNotNull(schemas);
         assertEquals(1, serviceInfo.getSchemas().size());
@@ -377,6 +383,22 @@
         assertNotNull(schema);
         control.verify();
     }
+    
+    @Test
+    public void testNoBodyParts() throws Exception {
+        setUpWSDL(NO_BODY_PARTS_WSDL_PATH, 0);
+        QName messageName = new QName("urn:org:apache:cxf:no_body_parts/wsdl",
+                                      "operation1Request");
+        MessageInfo mi = serviceInfo.getMessage(messageName);
+        QName partName = new QName("urn:org:apache:cxf:no_body_parts/wsdl",
+                                   "mimeAttachment");
+        MessagePartInfo pi = mi.getMessagePart(partName);
+        QName typeName = 
+            new QName("http://www.w3.org/2001/XMLSchema",
+                      "base64Binary");
+        assertEquals(typeName, pi.getTypeQName());
+        assertNull(pi.getElementQName());
+    }
 
     @Test
     public void testBare() throws Exception {

Added: cxf/trunk/rt/core/src/test/resources/org/apache/cxf/wsdl11/no_body_parts.wsdl
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/core/src/test/resources/org/apache/cxf/wsdl11/no_body_parts.wsdl?rev=661175&view=auto
==============================================================================
--- cxf/trunk/rt/core/src/test/resources/org/apache/cxf/wsdl11/no_body_parts.wsdl (added)
+++ cxf/trunk/rt/core/src/test/resources/org/apache/cxf/wsdl11/no_body_parts.wsdl Wed May 28 18:53:19 2008
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements. See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership. The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License. You may obtain a copy of the License at
+ 
+  http://www.apache.org/licenses/LICENSE-2.0
+ 
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied. See the License for the
+  specific language governing permissions and limitations
+  under the License.
+-->
+<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" 
+             xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
+             xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
+             xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" 
+             xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" 
+             xmlns:tns="urn:org:apache:cxf:no_body_parts/wsdl"
+             xmlns:types="urn:org:apache:cxf:no_body_parts/types"
+             targetNamespace="urn:org:apache:cxf:no_body_parts/wsdl"
+             name="no_body_parts">
+<types>
+<xsd:schema xmlns:tns="http://ws-i.org/profiles/basic/1.1/xsd" 
+            elementFormDefault="qualified" 
+            targetNamespace="http://ws-i.org/profiles/basic/1.1/xsd"> 
+	<xsd:simpleType name="swaRef"> 
+		<xsd:restriction base="xsd:anyURI"/> 
+	</xsd:simpleType> 
+</xsd:schema>
+
+<xsd:schema xmlns:tns="urn:org:apache:cxf:no_body_parts/types" 
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+            xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
+            xmlns:wsi="http://ws-i.org/profiles/basic/1.1/xsd" 
+            elementFormDefault="qualified" 
+            targetNamespace="urn:org:apache:cxf:no_body_parts/types">
+
+    <xsd:element name="operation1">
+        <xsd:complexType>
+            <xsd:sequence>
+                <xsd:element name="targetType" type="xsd:string" nillable="true"/>
+                <xsd:element name="optionString" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+            </xsd:sequence>
+        </xsd:complexType>            
+    </xsd:element>
+    <xsd:element name="operation1Response"> 
+        <xsd:complexType>
+            <xsd:sequence>    
+                <xsd:element name="status" type="xsd:string" nillable="true"/>
+            </xsd:sequence>
+        </xsd:complexType>
+    </xsd:element>
+
+
+</xsd:schema>
+</types>
+
+<message name="operation1Request">
+    <part name="parameters" element="types:operation1"/>
+    <part name="mimeAttachment" type="xsd:base64Binary"/>
+</message>
+<message name="operation1Response">
+    <part name="result" element="types:operation1Response"/>
+    <part name="mimeAttachment" type="xsd:base64Binary"/>
+</message>
+
+<portType name="NoBodyPartsSEI">
+    <operation name="operation1">
+        <input message="tns:operation1Request"/>
+        <output message="tns:operation1Response"/>
+    </operation>    
+</portType>
+
+<binding name="NoBodyPartsSEIBinding" type="tns:NoBodyPartsSEI">
+    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" 
+                  style="document"/>
+    <operation name="operation1">
+        <soap:operation soapAction=""/>
+        <input>
+            <mime:multipartRelated>
+                <mime:part>
+                    <soap:body use="literal"/>
+                </mime:part>
+                <mime:part>
+                    <mime:content part="mimeAttachment" type="application/octet-stream"/>
+                </mime:part>
+            </mime:multipartRelated>
+        </input>
+        <output>
+            <mime:multipartRelated> 
+                <mime:part>
+                    <soap:body use="literal"/>
+                </mime:part>
+                <mime:part>
+                    <mime:content part="mimeAttachment" type="application/octet-stream"/>
+                </mime:part>
+            </mime:multipartRelated>        
+        </output>        
+    </operation>
+</binding>
+
+<service name="NoBodyParts">
+    <port name="NoBodyPartsPort" binding="tns:NoBodyPartsSEIBinding">
+      <soap:address location="http://localhost/NoBodyParts" />
+    </port>
+</service>
+
+</definitions>
+

Propchange: cxf/trunk/rt/core/src/test/resources/org/apache/cxf/wsdl11/no_body_parts.wsdl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cxf/trunk/rt/core/src/test/resources/org/apache/cxf/wsdl11/no_body_parts.wsdl
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: cxf/trunk/rt/core/src/test/resources/org/apache/cxf/wsdl11/no_body_parts.wsdl
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBeanTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBeanTest.java?rev=661175&r1=661174&r2=661175&view=diff
==============================================================================
--- cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBeanTest.java (original)
+++ cxf/trunk/rt/frontend/jaxws/src/test/java/org/apache/cxf/jaxws/support/JaxWsServiceFactoryBeanTest.java Wed May 28 18:53:19 2008
@@ -239,8 +239,6 @@
         
         assertValid("/wsdl:definitions/wsdl:message[@name='echoChar']" 
                     + "/wsdl:part[@name = 'y'][@element='ns1:charEl_y']" , wsdl);
-
-        
     }
     
     @Test

Modified: cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxws/JaxWsDynamicClientTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxws/JaxWsDynamicClientTest.java?rev=661175&r1=661174&r2=661175&view=diff
==============================================================================
--- cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxws/JaxWsDynamicClientTest.java (original)
+++ cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jaxws/JaxWsDynamicClientTest.java Wed May 28 18:53:19 2008
@@ -26,6 +26,7 @@
 import org.apache.cxf.endpoint.Client;
 import org.apache.cxf.helpers.IOUtils;
 import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;
+import org.apache.cxf.no_body_parts.types.Operation1;
 import org.apache.cxf.no_body_parts.types.Operation1Response;
 import org.apache.cxf.testutil.common.AbstractBusClientServerTestBase;
 import org.junit.BeforeClass;
@@ -48,24 +49,27 @@
         for (int i = 0; i < messageDigest.length; i++) {
             hexString.append(Integer.toHexString(0xFF & messageDigest[i]));
         }
-        return messageDigest.toString();
+        return hexString.toString();
     }
 
     @BeforeClass
     public static void startServers() throws Exception {
         assertTrue("server did not launch correctly",
-                   launchServer(ServerNoBodyParts.class));
+                   launchServer(ServerNoBodyParts.class, true));
     }
     
-    @org.junit.Ignore // until we sort out the wsdl4j problem.
+    //@org.junit.Ignore // until we sort out the wsdl4j problem.
     @Test
     public void testInvocation() throws Exception {
         JaxWsDynamicClientFactory dcf = 
             JaxWsDynamicClientFactory.newInstance();
         Client client = dcf.createClient("http://localhost:9020/NoBodyParts/NoBodyPartsService?wsdl");
         byte[] bucketOfBytes = 
-            IOUtils.readBytesFromStream(getClass().getResourceAsStream("wsdl/no_body_parts.wsdl"));
-        Object[] rparts = client.invoke("operation1", bucketOfBytes);
+            IOUtils.readBytesFromStream(getClass().getResourceAsStream("/wsdl/no_body_parts.wsdl"));
+        Operation1 parameters = new Operation1();
+        parameters.setOptionString("opt-ion");
+        parameters.setTargetType("tar-get");
+        Object[] rparts = client.invoke("operation1", parameters, bucketOfBytes);
         Operation1Response r = (Operation1Response)rparts[0];
         assertEquals(md5(bucketOfBytes), r.getStatus());
     }

Modified: cxf/trunk/testutils/src/main/java/org/apache/cxf/no_body_parts/NoBodyPartsImpl.java
URL: http://svn.apache.org/viewvc/cxf/trunk/testutils/src/main/java/org/apache/cxf/no_body_parts/NoBodyPartsImpl.java?rev=661175&r1=661174&r2=661175&view=diff
==============================================================================
--- cxf/trunk/testutils/src/main/java/org/apache/cxf/no_body_parts/NoBodyPartsImpl.java (original)
+++ cxf/trunk/testutils/src/main/java/org/apache/cxf/no_body_parts/NoBodyPartsImpl.java Wed May 28 18:53:19 2008
@@ -46,7 +46,7 @@
         for (int i = 0; i < messageDigest.length; i++) {
             hexString.append(Integer.toHexString(0xFF & messageDigest[i]));
         }
-        return messageDigest.toString();
+        return hexString.toString();
     }
 
     /** {@inheritDoc} */