You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by mm...@apache.org on 2007/03/26 10:29:06 UTC
svn commit: r522452 - in /incubator/cxf/trunk:
systests/src/test/java/org/apache/cxf/systest/jms/
testutils/src/main/resources/wsdl/
tools/common/src/main/java/org/apache/cxf/tools/util/
tools/validator/src/main/java/org/apache/cxf/tools/validator/inte...
Author: mmao
Date: Mon Mar 26 01:29:05 2007
New Revision: 522452
URL: http://svn.apache.org/viewvc?view=rev&rev=522452
Log:
[CXF-451]jms_test wsdl has bunch of warnings
* Tools-Validator add WSI-BP Rule 2716
* Tools-Validator add WSI-BP Rule 2717
* Tools-Validator add WSI-BP Rule 2726
* Tools-Validator add WSI-BP Rule 2205
* Fix the jms_test wsdl warnings
Added:
incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/jms_test.wsdl
incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/jms_test2.wsdl
incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/soapheader.wsdl
Modified:
incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMS.java
incubator/cxf/trunk/testutils/src/main/resources/wsdl/jms_test.wsdl
incubator/cxf/trunk/tools/common/src/main/java/org/apache/cxf/tools/util/SOAPBindingUtil.java
incubator/cxf/trunk/tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSIBPValidator.java
incubator/cxf/trunk/tools/validator/src/test/java/org/apache/cxf/tools/validator/WSDLValidationTest.java
incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/doc_lit_bare.wsdl
incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/hello_world_mixed_style.wsdl
incubator/cxf/trunk/tools/wsdlto/misc/src/test/java/org/apache/cxf/tools/misc/processor/WSDLToSoapProcessorTest.java
Modified: incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMS.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMS.java?view=diff&rev=522452&r1=522451&r2=522452
==============================================================================
--- incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMS.java (original)
+++ incubator/cxf/trunk/systests/src/test/java/org/apache/cxf/systest/jms/GreeterImplTwoWayJMS.java Mon Mar 26 01:29:05 2007
@@ -26,6 +26,7 @@
import org.apache.cxf.hello_world_jms.BadRecordLitFault;
import org.apache.cxf.hello_world_jms.HelloWorldPortType;
import org.apache.cxf.hello_world_jms.NoSuchCodeLitFault;
+import org.apache.cxf.hello_world_jms.types.BadRecordLit;
import org.apache.cxf.hello_world_jms.types.ErrorCode;
import org.apache.cxf.hello_world_jms.types.NoSuchCodeLit;
import org.apache.cxf.hello_world_jms.types.TestRpcLitFaultResponse;
@@ -74,8 +75,10 @@
public TestRpcLitFaultResponse testRpcLitFault(String faultType)
throws BadRecordLitFault, NoSuchCodeLitFault {
+ BadRecordLit badRecord = new BadRecordLit();
+ badRecord.setReason("BadRecordLitFault");
if (faultType.equals(BadRecordLitFault.class.getSimpleName())) {
- throw new BadRecordLitFault("TestBadRecordLit", "BadRecordLitFault");
+ throw new BadRecordLitFault("TestBadRecordLit", badRecord);
}
if (faultType.equals(NoSuchCodeLitFault.class.getSimpleName())) {
ErrorCode ec = new ErrorCode();
Modified: incubator/cxf/trunk/testutils/src/main/resources/wsdl/jms_test.wsdl
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/testutils/src/main/resources/wsdl/jms_test.wsdl?view=diff&rev=522452&r1=522451&r2=522452
==============================================================================
--- incubator/cxf/trunk/testutils/src/main/resources/wsdl/jms_test.wsdl (original)
+++ incubator/cxf/trunk/testutils/src/main/resources/wsdl/jms_test.wsdl Mon Mar 26 01:29:05 2007
@@ -27,33 +27,36 @@
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<types>
<schema targetNamespace="http://cxf.apache.org/hello_world_jms/types" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:x1="http://cxf.apache.org/hello_world_jms/types" elementFormDefault="qualified">
- <complexType name="ErrorCode">
- <sequence>
- <element name="minor" type="short"/>
- <element name="major" type="short"/>
- </sequence>
- </complexType>
- <complexType name="testRpcLitFault">
- <sequence>
- <element name="faultType" type="string"/>
- </sequence>
- </complexType>
- <complexType name="testRpcLitFaultResponse">
- <sequence/>
- </complexType>
+ <complexType name="ErrorCode">
+ <sequence>
+ <element name="minor" type="short"/>
+ <element name="major" type="short"/>
+ </sequence>
+ </complexType>
+ <complexType name="testRpcLitFault">
+ <sequence>
+ <element name="faultType" type="string"/>
+ </sequence>
+ </complexType>
+ <complexType name="testRpcLitFaultResponse">
+ <sequence/>
+ </complexType>
+
+ <element name="NoSuchCodeLit" type="x1:NoSuchCodeLit"/>
+ <complexType name="NoSuchCodeLit">
+ <sequence>
+ <element name="code" type="x1:ErrorCode"/>
+ </sequence>
+ </complexType>
- <complexType name="NoSuchCodeLit">
- <sequence>
- <element name="code" type="x1:ErrorCode"/>
- </sequence>
- </complexType>
- <complexType name="BadRecord">
- <sequence>
- <element name="reason" type="string"/>
- <element name="code" type="short"/>
- </sequence>
- </complexType>
- </schema>
+ <element name="BadRecordLit" type="x1:BadRecordLit"/>
+ <complexType name="BadRecordLit">
+ <sequence>
+ <element name="reason" type="string"/>
+ <element name="code" type="short"/>
+ </sequence>
+ </complexType>
+ </schema>
</types>
<message name="greetMe">
@@ -77,10 +80,10 @@
<part name="out" type="x1:testRpcLitFaultResponse"/>
</message>
<message name="NoSuchCodeLitFault">
- <part name="NoSuchCodeLit" type="x1:NoSuchCodeLit"/>
+ <part name="NoSuchCodeLit" element="x1:NoSuchCodeLit"/>
</message>
<message name="BadRecordLitFault">
- <part name="BadRecordLit" type="xsd:string"/>
+ <part name="BadRecordLit" element="x1:BadRecordLit"/>
</message>
<portType name="HelloWorldPortType">
@@ -156,10 +159,10 @@
<soap:body namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
</output>
<fault name="NoSuchCodeLitFault">
- <soap:fault name="NoSuchCodeLitFault" namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ <soap:fault name="NoSuchCodeLitFault" use="literal"/>
</fault>
<fault name="BadRecordLitFault">
- <soap:fault name="BadRecordLitFault" namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ <soap:fault name="BadRecordLitFault" use="literal"/>
</fault>
</operation>
</binding>
Modified: incubator/cxf/trunk/tools/common/src/main/java/org/apache/cxf/tools/util/SOAPBindingUtil.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/common/src/main/java/org/apache/cxf/tools/util/SOAPBindingUtil.java?view=diff&rev=522452&r1=522451&r2=522452
==============================================================================
--- incubator/cxf/trunk/tools/common/src/main/java/org/apache/cxf/tools/util/SOAPBindingUtil.java (original)
+++ incubator/cxf/trunk/tools/common/src/main/java/org/apache/cxf/tools/util/SOAPBindingUtil.java Mon Mar 26 01:29:05 2007
@@ -47,6 +47,7 @@
import javax.wsdl.extensions.soap12.SOAP12Operation;
import javax.xml.namespace.QName;
+import org.apache.cxf.common.util.StringUtils;
import org.apache.cxf.tools.common.ExtensionInvocationHandler;
import org.apache.cxf.tools.common.WSDLConstants;
import org.apache.cxf.tools.common.extensions.soap.SoapAddress;
@@ -81,6 +82,17 @@
return cls.cast(proxy);
}
+ public static boolean isSOAPBinding(Binding binding) {
+ Iterator ite = binding.getExtensibilityElements().iterator();
+ while (ite.hasNext()) {
+ Object obj = ite.next();
+ if (isSOAPBinding(obj)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
public static String getBindingStyle(Binding binding) {
Iterator ite = binding.getExtensibilityElements().iterator();
while (ite.hasNext()) {
@@ -257,6 +269,26 @@
return obj instanceof SOAPBinding || obj instanceof SOAP12Binding;
}
+ @SuppressWarnings("unchecked")
+ public static List<SoapFault> getBindingOperationSoapFaults(BindingOperation bop) {
+ List<SoapFault> faults = new ArrayList<SoapFault>();
+ Map bindingFaults = bop.getBindingFaults();
+ for (Object obj : bindingFaults.values()) {
+ if (!(obj instanceof BindingFault)) {
+ continue;
+ }
+ BindingFault faultElement = (BindingFault) obj;
+ Iterator ite = faultElement.getExtensibilityElements().iterator();
+ while (ite.hasNext()) {
+ SoapFault fault = getSoapFault(ite.next());
+ if (fault != null) {
+ faults.add(fault);
+ }
+ }
+ }
+ return faults;
+ }
+
public static SoapFault getSoapFault(Object obj) {
if (isSOAPFault(obj)) {
return getProxy(SoapFault.class, obj);
@@ -319,7 +351,7 @@
public static String getCanonicalBindingStyle(Binding binding) {
String bindingStyle = getBindingStyle(binding);
- if (bindingStyle != null && !("".equals(bindingStyle))) {
+ if (!StringUtils.isEmpty(bindingStyle)) {
return bindingStyle;
}
for (Iterator ite2 = binding.getBindingOperations().iterator(); ite2.hasNext();) {
Modified: incubator/cxf/trunk/tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSIBPValidator.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSIBPValidator.java?view=diff&rev=522452&r1=522451&r2=522452
==============================================================================
--- incubator/cxf/trunk/tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSIBPValidator.java (original)
+++ incubator/cxf/trunk/tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSIBPValidator.java Mon Mar 26 01:29:05 2007
@@ -19,8 +19,10 @@
package org.apache.cxf.tools.validator.internal;
+import java.lang.reflect.Member;
import java.lang.reflect.Method;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.Iterator;
import java.util.List;
@@ -28,14 +30,18 @@
import javax.wsdl.Binding;
import javax.wsdl.BindingOperation;
import javax.wsdl.Definition;
+import javax.wsdl.Fault;
import javax.wsdl.Message;
import javax.wsdl.Operation;
import javax.wsdl.Part;
import javax.wsdl.PortType;
+import org.apache.cxf.common.util.CollectionUtils;
+import org.apache.cxf.common.util.StringUtils;
import org.apache.cxf.helpers.WSDLHelper;
import org.apache.cxf.tools.common.ToolException;
import org.apache.cxf.tools.common.extensions.soap.SoapBody;
+import org.apache.cxf.tools.common.extensions.soap.SoapFault;
import org.apache.cxf.tools.common.extensions.soap.SoapHeader;
import org.apache.cxf.tools.util.SOAPBindingUtil;
@@ -51,8 +57,9 @@
for (Method m : getClass().getMethods()) {
Boolean res = Boolean.TRUE;
- if (m.getName().startsWith("check")) {
+ if (m.getName().startsWith("check") || m.getModifiers() == Member.PUBLIC) {
try {
+ System.err.println("invoking" + m.getName());
res = (Boolean)m.invoke(this, new Object[] {});
} catch (Exception e) {
e.printStackTrace();
@@ -67,9 +74,68 @@
}
+ private boolean checkR2716(final BindingOperation bop) {
+ SoapBody inSoapBody = SOAPBindingUtil.getBindingInputSOAPBody(bop);
+ SoapBody outSoapBody = SOAPBindingUtil.getBindingOutputSOAPBody(bop);
+ if (inSoapBody != null && !StringUtils.isEmpty(inSoapBody.getNamespaceURI())
+ || outSoapBody != null && !StringUtils.isEmpty(outSoapBody.getNamespaceURI())) {
+ addErrorMessage("Violate WSI-BP-1.0 R2716 operation '"
+ + bop.getName() + "' soapBody MUST NOT have namespace attribute");
+ return false;
+ }
+
+ SoapHeader inSoapHeader = SOAPBindingUtil.getBindingInputSOAPHeader(bop);
+ SoapHeader outSoapHeader = SOAPBindingUtil.getBindingOutputSOAPHeader(bop);
+ if (inSoapHeader != null && !StringUtils.isEmpty(inSoapHeader.getNamespaceURI())
+ || outSoapHeader != null && !StringUtils.isEmpty(outSoapHeader.getNamespaceURI())) {
+ addErrorMessage("Violate WSI-BP-1.0 R2716 operation '"
+ + bop.getName() + "' soapHeader MUST NOT have namespace attribute");
+ return false;
+ }
+
+ List<SoapFault> soapFaults = SOAPBindingUtil.getBindingOperationSoapFaults(bop);
+ for (SoapFault fault : soapFaults) {
+ if (!StringUtils.isEmpty(fault.getNamespaceURI())) {
+ addErrorMessage("Violate WSI-BP-1.0 R2716 operation '"
+ + bop.getName() + "' soapFault MUST NOT have namespace attribute");
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private boolean checkR2717AndR2726(final BindingOperation bop) {
+ SoapBody inSoapBody = SOAPBindingUtil.getBindingInputSOAPBody(bop);
+ SoapBody outSoapBody = SOAPBindingUtil.getBindingOutputSOAPBody(bop);
+ if (inSoapBody != null && StringUtils.isEmpty(inSoapBody.getNamespaceURI())
+ || outSoapBody != null && StringUtils.isEmpty(outSoapBody.getNamespaceURI())) {
+ addErrorMessage("Violate WSI-BP-1.0 R2717 operation '"
+ + bop.getName() + "' soapBody MUST have namespace attribute");
+ return false;
+ }
+
+ SoapHeader inSoapHeader = SOAPBindingUtil.getBindingInputSOAPHeader(bop);
+ SoapHeader outSoapHeader = SOAPBindingUtil.getBindingOutputSOAPHeader(bop);
+ if (inSoapHeader != null && !StringUtils.isEmpty(inSoapHeader.getNamespaceURI())
+ || outSoapHeader != null && !StringUtils.isEmpty(outSoapHeader.getNamespaceURI())) {
+ addErrorMessage("Violate WSI-BP-1.0 R2726 operation '"
+ + bop.getName() + "' soapHeader MUST NOT have namespace attribute");
+ return false;
+ }
+
+ List<SoapFault> soapFaults = SOAPBindingUtil.getBindingOperationSoapFaults(bop);
+ for (SoapFault fault : soapFaults) {
+ if (!StringUtils.isEmpty(fault.getNamespaceURI())) {
+ addErrorMessage("Violate WSI-BP-1.0 R2726 operation '"
+ + bop.getName() + "' soapFault MUST NOT have namespace attribute");
+ return false;
+ }
+ }
+ return true;
+ }
+
private boolean checkR2201Input(final Operation operation,
- final BindingOperation bop,
- final Binding binding) {
+ final BindingOperation bop) {
List<Part> partsList = wsdlHelper.getInMessageParts(operation);
int inmessagePartsCount = partsList.size();
SoapBody soapBody = SOAPBindingUtil.getBindingInputSOAPBody(bop);
@@ -120,8 +186,7 @@
}
private boolean checkR2201Output(final Operation operation,
- final BindingOperation bop,
- final Binding binding) {
+ final BindingOperation bop) {
int outmessagePartsCount = wsdlHelper.getOutMessageParts(operation).size();
SoapBody soapBody = SOAPBindingUtil.getBindingOutputSOAPBody(bop);
if (soapBody != null) {
@@ -169,7 +234,7 @@
return true;
}
- public boolean checkR2201() {
+ public boolean checkBinding() {
for (PortType portType : wsdlHelper.getPortTypes(def)) {
Iterator ite = portType.getOperations().iterator();
while (ite.hasNext()) {
@@ -183,12 +248,15 @@
String style = "".equals(SOAPBindingUtil.getSOAPOperationStyle(bop))
? bindingStyle : SOAPBindingUtil.getSOAPOperationStyle(bop);
-
if ("DOCUMENT".equalsIgnoreCase(style)) {
- if (!checkR2201Input(operation, bop, binding)) {
+ boolean passed = checkR2201Input(operation, bop)
+ && checkR2201Output(operation, bop)
+ && checkR2716(bop);
+ if (!passed) {
return false;
}
- if (!checkR2201Output(operation, bop, binding)) {
+ } else {
+ if (!checkR2717AndR2726(bop)) {
return false;
}
}
@@ -257,6 +325,45 @@
}
}
+ }
+ return true;
+ }
+
+ // TODO: Should also check SoapHeader/SoapHeaderFault
+ @SuppressWarnings("unchecked")
+ public boolean checkR2205() {
+ for (Iterator ite = def.getBindings().values().iterator(); ite.hasNext();) {
+ Binding binding = (Binding)ite.next();
+
+ if (!SOAPBindingUtil.isSOAPBinding(binding)) {
+ System.err.println("NOT SOAPBINDING");
+ continue;
+ }
+
+ String style = SOAPBindingUtil.getCanonicalBindingStyle(binding);
+
+ for (Iterator ite2 = binding.getPortType().getOperations().iterator(); ite2.hasNext();) {
+ Operation operation = (Operation)ite2.next();
+ Collection<Fault> faults = operation.getFaults().values();
+ if (CollectionUtils.isEmpty(faults)) {
+ continue;
+ }
+
+ for (Fault fault : faults) {
+ Message message = fault.getMessage();
+ System.err.println("message:" + message.getQName());
+ Collection<Part> parts = message.getParts().values();
+ for (Part part : parts) {
+ System.err.println("Part: " + part.getElementName());
+ if (part.getElementName() == null) {
+ addErrorMessage("Violate WSI-BP-1.0 R2205: In Message " + message.getQName()
+ + ", part " + part.getName()
+ + " must specify a 'element' attribute");
+ return false;
+ }
+ }
+ }
+ }
}
return true;
}
Modified: incubator/cxf/trunk/tools/validator/src/test/java/org/apache/cxf/tools/validator/WSDLValidationTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/validator/src/test/java/org/apache/cxf/tools/validator/WSDLValidationTest.java?view=diff&rev=522452&r1=522451&r2=522452
==============================================================================
--- incubator/cxf/trunk/tools/validator/src/test/java/org/apache/cxf/tools/validator/WSDLValidationTest.java (original)
+++ incubator/cxf/trunk/tools/validator/src/test/java/org/apache/cxf/tools/validator/WSDLValidationTest.java Mon Mar 26 01:29:05 2007
@@ -54,7 +54,7 @@
e.printStackTrace();
}
}
-
+
public void testValidateTypeElement() {
try {
@@ -149,7 +149,28 @@
} catch (Exception e) {
e.printStackTrace();
}
+ }
+ public void testWSIBPR2726() throws Exception {
+ try {
+ String[] args = new String[] {"-verbose",
+ getLocation("/validator_wsdl/jms_test.wsdl")};
+ WSDLValidator.main(args);
+ assertTrue(getStdErr().indexOf("WSI-BP-1.0 R2726") > -1);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ public void testWSIBPR2205() throws Exception {
+ try {
+ String[] args = new String[] {"-verbose",
+ getLocation("/validator_wsdl/jms_test2.wsdl")};
+ WSDLValidator.main(args);
+ assertTrue(getStdErr().indexOf("WSI-BP-1.0 R2205") > -1);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
protected String getLocation(String wsdlFile) throws Exception {
Modified: incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/doc_lit_bare.wsdl
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/doc_lit_bare.wsdl?view=diff&rev=522452&r1=522451&r2=522452
==============================================================================
--- incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/doc_lit_bare.wsdl (original)
+++ incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/doc_lit_bare.wsdl Mon Mar 26 01:29:05 2007
@@ -17,89 +17,99 @@
specific language governing permissions and limitations
under the License.
-->
-<wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://apache.org/hello_world_doc_lit_bare" xmlns:x1="http://apache.org/hello_world_doc_lit_bare/types" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://apache.org/hello_world_doc_lit_bare" name="DocLitBare">
+<wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://apache.org/hello_world_doc_lit_bare"
+ xmlns:x1="http://apache.org/hello_world_doc_lit_bare/types"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://apache.org/hello_world_doc_lit_bare"
+ name="DocLitBare">
<wsdl:types>
- <schema targetNamespace="http://apache.org/hello_world_doc_lit_bare/types" xmlns:tns="http://apache.org/hello_world_doc_lit_bare/types" xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
- <complexType name="TradePriceData">
- <sequence>
- <element name="tickerSymbol" type="xsd:string"/>
- <element name="tickerPrice" type="xsd:float"/>
- </sequence>
- </complexType>
- <element name="in" type="tns:TradePriceData"/>
- <element name="inout" type="tns:TradePriceData"/>
+ <schema targetNamespace="http://apache.org/hello_world_doc_lit_bare/types"
+ xmlns:tns="http://apache.org/hello_world_doc_lit_bare/types"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+ <complexType name="TradePriceData">
+ <sequence>
+ <element name="tickerSymbol" type="xsd:string"/>
+ <element name="tickerPrice" type="xsd:float"/>
+ </sequence>
+ </complexType>
+ <element name="in" type="tns:TradePriceData"/>
+ <element name="inout" type="tns:TradePriceData"/>
</schema>
</wsdl:types>
<message name="PutLastTradedPriceInput">
- <part name="body" element="x1:in"/>
+ <part name="body" element="x1:in"/>
</message>
<message name="PutLastTradedPriceOutput"/>
-
+
<message name="SayHiInput">
- <part name="body" element="x1:inout"/>
+ <part name="body" element="x1:inout"/>
</message>
<message name="SayHiOutput">
- <part name="body" element="x1:inout"/>
+ <part name="body" element="x1:inout"/>
</message>
-
+
<message name="GreetMeInput">
- <part name="body1" element="x1:inout"/>
- <part name="body2" element="x1:in"/>
+ <part name="body1" element="x1:inout"/>
+ <part name="body2" element="x1:in"/>
</message>
<message name="GreetMeOutput">
- <part name="body1" element="x1:inout"/>
+ <part name="body1" element="x1:inout"/>
</message>
<portType name="PutLastTradedPricePortType">
-
- <operation name="GreetMe">
- <input message="tns:GreetMeInput"/>
- <output message="tns:GreetMeOutput"/>
- </operation>
-
- <operation name="SayHi">
- <input message="tns:SayHiInput"/>
- <output message="tns:SayHiOutput"/>
- </operation>
-
- <operation name="PutLastTradedPrice">
- <input message="tns:PutLastTradedPriceInput"/>
- <output message="tns:PutLastTradedPriceOutput"/>
- </operation>
+
+ <operation name="GreetMe">
+ <input message="tns:GreetMeInput"/>
+ <output message="tns:GreetMeOutput"/>
+ </operation>
+
+ <operation name="SayHi">
+ <input message="tns:SayHiInput"/>
+ <output message="tns:SayHiOutput"/>
+ </operation>
+
+ <operation name="PutLastTradedPrice">
+ <input message="tns:PutLastTradedPriceInput"/>
+ <output message="tns:PutLastTradedPriceOutput"/>
+ </operation>
</portType>
<binding name="PutLastTradedPriceSoapBinding" type="tns:PutLastTradedPricePortType">
- <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
-
- <operation name="GreetMe">
- <input>
- <soap:body use="literal"/>
- </input>
- <output>
- <soap:body use="literal"/>
- </output>
- </operation>
-
- <operation name="SayHi">
- <input>
- <soap:body use="literal"/>
- </input>
- <output>
- <soap:body use="literal"/>
- </output>
- </operation>
-
- <operation name="PutLastTradedPrice">
- <input>
- <soap:body use="literal"/>
- </input>
- <output>
- <soap:body use="literal"/>
- </output>
- </operation>
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+
+ <operation name="GreetMe">
+ <input>
+ <soap:body namespace="http://apache.org/hello_world_doc_lit_bare" use="literal"/>
+ </input>
+ <output>
+ <soap:body namespace="http://apache.org/hello_world_doc_lit_bare" use="literal"/>
+ </output>
+ </operation>
+
+ <operation name="SayHi">
+ <input>
+ <soap:body namespace="http://apache.org/hello_world_doc_lit_bare" use="literal"/>
+ </input>
+ <output>
+ <soap:body namespace="http://apache.org/hello_world_doc_lit_bare" use="literal"/>
+ </output>
+ </operation>
+
+ <operation name="PutLastTradedPrice">
+ <input>
+ <soap:body namespace="http://apache.org/hello_world_doc_lit_bare" use="literal"/>
+ </input>
+ <output>
+ <soap:body namespace="http://apache.org/hello_world_doc_lit_bare" use="literal"/>
+ </output>
+ </operation>
</binding>
<wsdl:service name="SOAPService">
- <wsdl:port name="SoapPort" binding="tns:PutLastTradedPriceSoapBinding">
- <soap:address location="http://localhost:9003/SOAPDocLitBareService/SoapPort"/>
- </wsdl:port>
+ <wsdl:port name="SoapPort" binding="tns:PutLastTradedPriceSoapBinding">
+ <soap:address location="http://localhost:9003/SOAPDocLitBareService/SoapPort"/>
+ </wsdl:port>
</wsdl:service>
</wsdl:definitions>
Modified: incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/hello_world_mixed_style.wsdl
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/hello_world_mixed_style.wsdl?view=diff&rev=522452&r1=522451&r2=522452
==============================================================================
--- incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/hello_world_mixed_style.wsdl (original)
+++ incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/hello_world_mixed_style.wsdl Mon Mar 26 01:29:05 2007
@@ -207,10 +207,10 @@
<wsdl:operation name="greetMe">
<soap:operation style="rpc"/>
<wsdl:input>
- <soap:body use="literal"/>
+ <soap:body use="literal" namespace="http://apache.org/hello_world_soap_http"/>
</wsdl:input>
<wsdl:output>
- <soap:body use="literal"/>
+ <soap:body use="literal" namespace="http://apache.org/hello_world_soap_http"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="greetMeSometime">
Added: incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/jms_test.wsdl
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/jms_test.wsdl?view=auto&rev=522452
==============================================================================
--- incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/jms_test.wsdl (added)
+++ incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/jms_test.wsdl Mon Mar 26 01:29:05 2007
@@ -0,0 +1,172 @@
+<?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 name="HelloWorldService"
+ targetNamespace="http://cxf.apache.org/hello_world_jms"
+ xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:jms="http://cxf.apache.org/transports/jms"
+ xmlns:x1="http://cxf.apache.org/hello_world_jms/types"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://cxf.apache.org/hello_world_jms"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <types>
+ <schema targetNamespace="http://cxf.apache.org/hello_world_jms/types"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:x1="http://cxf.apache.org/hello_world_jms/types"
+ elementFormDefault="qualified">
+ <complexType name="ErrorCode">
+ <sequence>
+ <element name="minor" type="short"/>
+ <element name="major" type="short"/>
+ </sequence>
+ </complexType>
+ <complexType name="testRpcLitFault">
+ <sequence>
+ <element name="faultType" type="string"/>
+ </sequence>
+ </complexType>
+ <complexType name="testRpcLitFaultResponse">
+ <sequence/>
+ </complexType>
+
+ <complexType name="NoSuchCodeLit">
+ <sequence>
+ <element name="code" type="x1:ErrorCode"/>
+ </sequence>
+ </complexType>
+ <complexType name="BadRecord">
+ <sequence>
+ <element name="reason" type="string"/>
+ <element name="code" type="short"/>
+ </sequence>
+ </complexType>
+ </schema>
+ </types>
+
+ <message name="greetMe">
+ <part name="stringParam0" type="xsd:string"/>
+ </message>
+ <message name="greetMeResponse">
+ <part name="return" type="xsd:string"/>
+ </message>
+ <message name="sayHi"/>
+ <message name="sayHiResponse">
+ <part name="return" type="xsd:string"/>
+ </message>
+ <message name="greetMeOneWay">
+ <part name="stringParam0" type="xsd:string"/>
+ </message>
+
+ <message name="testRpcLitFaultRequest">
+ <part name="in" type="xsd:string"/>
+ </message>
+ <message name="testRpcLitFaultResponse">
+ <part name="out" type="x1:testRpcLitFaultResponse"/>
+ </message>
+ <message name="NoSuchCodeLitFault">
+ <part name="NoSuchCodeLit" type="x1:NoSuchCodeLit"/>
+ </message>
+ <message name="BadRecordLitFault">
+ <part name="BadRecordLit" type="xsd:string"/>
+ </message>
+
+ <portType name="HelloWorldPortType">
+ <operation name="greetMe">
+ <input message="tns:greetMe" name="greetMe"/>
+ <output message="tns:greetMeResponse" name="greetMeResponse"/>
+ </operation>
+ <operation name="sayHi">
+ <input message="tns:sayHi" name="sayHi"/>
+ <output message="tns:sayHiResponse" name="sayHiResponse"/>
+ </operation>
+ <operation name="greetMeOneWay">
+ <input message="tns:greetMeOneWay" name="greetMeOneWay"/>
+ </operation>
+ <operation name="testRpcLitFault">
+ <input name="testRpcLitFaultRequest" message="tns:testRpcLitFaultRequest"/>
+ <output name="testRpcLitFaultResponse" message="tns:testRpcLitFaultResponse"/>
+ <fault name="NoSuchCodeLitFault" message="tns:NoSuchCodeLitFault"/>
+ <fault name="BadRecordLitFault" message="tns:BadRecordLitFault"/>
+ </operation>
+ </portType>
+
+ <binding name="HelloWorldPortBinding" type="tns:HelloWorldPortType">
+ <soap:binding style="rpc" transport="http://cxf.apache.org/transports/jms"/>
+ <operation name="greetMe">
+ <soap:operation soapAction="" style="rpc"/>
+ <input name="greetMe">
+ <soap:body
+ namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </input>
+ <output name="greetMeResponse">
+ <soap:body
+ namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </output>
+ </operation>
+ <operation name="sayHi">
+ <soap:operation soapAction="" style="rpc"/>
+ <input name="sayHi">
+ <soap:body
+ namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </input>
+ <output name="sayHiResponse">
+ <soap:body
+ namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </output>
+ </operation>
+ <operation name="greetMeOneWay">
+ <soap:operation style="rpc"/>
+ <input name="greetMeOneWay">
+ <soap:body
+ namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </input>
+ </operation>
+
+ <operation name="testRpcLitFault">
+ <soap:operation style="rpc"/>
+ <input>
+ <soap:body namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </input>
+ <output>
+ <soap:body namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </output>
+ <fault name="NoSuchCodeLitFault">
+ <soap:fault name="NoSuchCodeLitFault" namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </fault>
+ <fault name="BadRecordLitFault">
+ <soap:fault name="BadRecordLitFault" namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </fault>
+ </operation>
+ </binding>
+
+ <service name="HelloWorldService">
+ <port binding="tns:HelloWorldPortBinding" name="HelloWorldPort">
+ <jms:address
+ jndiConnectionFactoryName="ConnectionFactory"
+ jndiDestinationName="dynamicQueues/test.jmstransport.text">
+ <jms:JMSNamingProperty name="java.naming.factory.initial" value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
+ <jms:JMSNamingProperty name="java.naming.provider.url" value="tcp://localhost:61500"/>
+ </jms:address>
+
+ <jms:server durableSubscriberName="CXF_subscriber"/>
+ </port>
+ </service>
+</definitions>
+
+
Added: incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/jms_test2.wsdl
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/jms_test2.wsdl?view=auto&rev=522452
==============================================================================
--- incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/jms_test2.wsdl (added)
+++ incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/jms_test2.wsdl Mon Mar 26 01:29:05 2007
@@ -0,0 +1,172 @@
+<?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 name="HelloWorldService"
+ targetNamespace="http://cxf.apache.org/hello_world_jms"
+ xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:jms="http://cxf.apache.org/transports/jms"
+ xmlns:x1="http://cxf.apache.org/hello_world_jms/types"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://cxf.apache.org/hello_world_jms"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <types>
+ <schema targetNamespace="http://cxf.apache.org/hello_world_jms/types"
+ xmlns="http://www.w3.org/2001/XMLSchema"
+ xmlns:x1="http://cxf.apache.org/hello_world_jms/types"
+ elementFormDefault="qualified">
+ <complexType name="ErrorCode">
+ <sequence>
+ <element name="minor" type="short"/>
+ <element name="major" type="short"/>
+ </sequence>
+ </complexType>
+ <complexType name="testRpcLitFault">
+ <sequence>
+ <element name="faultType" type="string"/>
+ </sequence>
+ </complexType>
+ <complexType name="testRpcLitFaultResponse">
+ <sequence/>
+ </complexType>
+
+ <complexType name="NoSuchCodeLit">
+ <sequence>
+ <element name="code" type="x1:ErrorCode"/>
+ </sequence>
+ </complexType>
+ <complexType name="BadRecord">
+ <sequence>
+ <element name="reason" type="string"/>
+ <element name="code" type="short"/>
+ </sequence>
+ </complexType>
+ </schema>
+ </types>
+
+ <message name="greetMe">
+ <part name="stringParam0" type="xsd:string"/>
+ </message>
+ <message name="greetMeResponse">
+ <part name="return" type="xsd:string"/>
+ </message>
+ <message name="sayHi"/>
+ <message name="sayHiResponse">
+ <part name="return" type="xsd:string"/>
+ </message>
+ <message name="greetMeOneWay">
+ <part name="stringParam0" type="xsd:string"/>
+ </message>
+
+ <message name="testRpcLitFaultRequest">
+ <part name="in" type="xsd:string"/>
+ </message>
+ <message name="testRpcLitFaultResponse">
+ <part name="out" type="x1:testRpcLitFaultResponse"/>
+ </message>
+ <message name="NoSuchCodeLitFault">
+ <part name="NoSuchCodeLit" type="x1:NoSuchCodeLit"/>
+ </message>
+ <message name="BadRecordLitFault">
+ <part name="BadRecordLit" type="xsd:string"/>
+ </message>
+
+ <portType name="HelloWorldPortType">
+ <operation name="greetMe">
+ <input message="tns:greetMe" name="greetMe"/>
+ <output message="tns:greetMeResponse" name="greetMeResponse"/>
+ </operation>
+ <operation name="sayHi">
+ <input message="tns:sayHi" name="sayHi"/>
+ <output message="tns:sayHiResponse" name="sayHiResponse"/>
+ </operation>
+ <operation name="greetMeOneWay">
+ <input message="tns:greetMeOneWay" name="greetMeOneWay"/>
+ </operation>
+ <operation name="testRpcLitFault">
+ <input name="testRpcLitFaultRequest" message="tns:testRpcLitFaultRequest"/>
+ <output name="testRpcLitFaultResponse" message="tns:testRpcLitFaultResponse"/>
+ <fault name="NoSuchCodeLitFault" message="tns:NoSuchCodeLitFault"/>
+ <fault name="BadRecordLitFault" message="tns:BadRecordLitFault"/>
+ </operation>
+ </portType>
+
+ <binding name="HelloWorldPortBinding" type="tns:HelloWorldPortType">
+ <soap:binding style="rpc" transport="http://cxf.apache.org/transports/jms"/>
+ <operation name="greetMe">
+ <soap:operation soapAction="" style="rpc"/>
+ <input name="greetMe">
+ <soap:body
+ namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </input>
+ <output name="greetMeResponse">
+ <soap:body
+ namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </output>
+ </operation>
+ <operation name="sayHi">
+ <soap:operation soapAction="" style="rpc"/>
+ <input name="sayHi">
+ <soap:body
+ namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </input>
+ <output name="sayHiResponse">
+ <soap:body
+ namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </output>
+ </operation>
+ <operation name="greetMeOneWay">
+ <soap:operation style="rpc"/>
+ <input name="greetMeOneWay">
+ <soap:body
+ namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </input>
+ </operation>
+
+ <operation name="testRpcLitFault">
+ <soap:operation style="rpc"/>
+ <input>
+ <soap:body namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </input>
+ <output>
+ <soap:body namespace="http://cxf.apache.org/hello_world_jms" use="literal"/>
+ </output>
+ <fault name="NoSuchCodeLitFault">
+ <soap:fault name="NoSuchCodeLitFault" use="literal"/>
+ </fault>
+ <fault name="BadRecordLitFault">
+ <soap:fault name="BadRecordLitFault" use="literal"/>
+ </fault>
+ </operation>
+ </binding>
+
+ <service name="HelloWorldService">
+ <port binding="tns:HelloWorldPortBinding" name="HelloWorldPort">
+ <jms:address
+ jndiConnectionFactoryName="ConnectionFactory"
+ jndiDestinationName="dynamicQueues/test.jmstransport.text">
+ <jms:JMSNamingProperty name="java.naming.factory.initial" value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/>
+ <jms:JMSNamingProperty name="java.naming.provider.url" value="tcp://localhost:61500"/>
+ </jms:address>
+
+ <jms:server durableSubscriberName="CXF_subscriber"/>
+ </port>
+ </service>
+</definitions>
+
+
Added: incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/soapheader.wsdl
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/soapheader.wsdl?view=auto&rev=522452
==============================================================================
--- incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/soapheader.wsdl (added)
+++ incubator/cxf/trunk/tools/validator/src/test/resources/validator_wsdl/soapheader.wsdl Mon Mar 26 01:29:05 2007
@@ -0,0 +1,98 @@
+<?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.
+-->
+<wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://apache.org/header_test"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://apache.org/header_test"
+ name="TestHeaderWSDL"
+ xmlns:all="http://apache.org/tests/type_test/all"
+ xmlns:chc="http://apache.org/tests/type_test/choice"
+ xmlns:seq="http://apache.org/tests/type_test/sequence">
+ <wsdl:types>
+ <schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://apache.org/tests/type_test/all">
+ <element name="test_all" type="all:SimpleAll"/>
+ <complexType name="SimpleAll">
+ <all>
+ <element name="varFloat" type="float"/>
+ <element name="varInt" type="int"/>
+ <element name="varString" type="string"/>
+ </all>
+ <attribute name="varAttrString" type="string"/>
+ </complexType>
+ </schema>
+ <schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://apache.org/tests/type_test/sequence">
+ <element name="test_seq" type="seq:SimpleStruct"/>
+ <complexType name="SimpleStruct">
+ <sequence>
+ <element name="varFloat" type="float"/>
+ <element name="varInt" type="int"/>
+ <element name="varString" type="string"/>
+ </sequence>
+ <attribute name="varAttrString" type="string"/>
+ </complexType>
+ </schema>
+ <schema xmlns="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://apache.org/tests/type_test/choice">
+ <element name="test_chc" type="chc:SimpleChoice"/>
+ <complexType name="SimpleChoice">
+ <choice>
+ <element name="varFloat" type="float"/>
+ <element name="varInt" type="int"/>
+ <element name="varString" type="string"/>
+ </choice>
+ </complexType>
+ </schema>
+ </wsdl:types>
+ <message name="AnyTypeRequest">
+ <part name="x" element="all:test_all"/>
+ <part name="y" element="chc:test_chc"/>
+ </message>
+ <message name="AnyTypeResponse">
+ <part name="x" element="all:test_all"/>
+ <part name="return" element="seq:test_seq"/>
+ </message>
+ <wsdl:portType name="TestHeader">
+ <operation name="send_receive_any_type">
+ <input name="send_receive_any_type_request" message="tns:AnyTypeRequest"/>
+ <output name="send_receive_any_type_response" message="tns:AnyTypeResponse"/>
+ </operation>
+ </wsdl:portType>
+ <wsdl:binding name="TestHeader_SOAPBinding" type="tns:TestHeader">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <operation name="send_receive_any_type">
+ <soap:operation soapAction="" style="document"/>
+ <input>
+ <soap:body use="literal"/>
+ </input>
+ <output>
+ <soap:body use="literal"/>
+ </output>
+ </operation>
+ </wsdl:binding>
+ <wsdl:service name="SOAPHeaderService">
+ <wsdl:port name="SoapHeaderPort" binding="tns:TestHeader_SOAPBinding">
+ <soap:address location="http://localhost:9104/SoapHeaderContext/SoapHeaderPort"/>
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>
Modified: incubator/cxf/trunk/tools/wsdlto/misc/src/test/java/org/apache/cxf/tools/misc/processor/WSDLToSoapProcessorTest.java
URL: http://svn.apache.org/viewvc/incubator/cxf/trunk/tools/wsdlto/misc/src/test/java/org/apache/cxf/tools/misc/processor/WSDLToSoapProcessorTest.java?view=diff&rev=522452&r1=522451&r2=522452
==============================================================================
--- incubator/cxf/trunk/tools/wsdlto/misc/src/test/java/org/apache/cxf/tools/misc/processor/WSDLToSoapProcessorTest.java (original)
+++ incubator/cxf/trunk/tools/wsdlto/misc/src/test/java/org/apache/cxf/tools/misc/processor/WSDLToSoapProcessorTest.java Mon Mar 26 01:29:05 2007
@@ -40,6 +40,7 @@
import org.apache.cxf.tools.common.WSDLConstants;
import org.apache.cxf.tools.common.extensions.soap.SoapBinding;
import org.apache.cxf.tools.common.extensions.soap.SoapBody;
+import org.apache.cxf.tools.common.extensions.soap.SoapFault;
import org.apache.cxf.tools.common.extensions.soap.SoapOperation;
import org.apache.cxf.tools.misc.WSDLToSoap;
import org.apache.cxf.tools.util.SOAPBindingUtil;
@@ -119,6 +120,9 @@
if (!found) {
fail("Element soap:fault Missed!");
}
+ List<SoapFault> faults = SOAPBindingUtil.getBindingOperationSoapFaults(bo);
+ assertEquals(1, faults.size());
+ assertEquals("pingMeFault", faults.get(0).getName());
} catch (ToolException e) {
fail("Exception Encountered when parsing wsdl, error: " + e.getMessage());
}