You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by se...@apache.org on 2008/08/25 16:25:50 UTC
svn commit: r688735 - in /cxf/trunk/tools:
validator/src/main/java/org/apache/cxf/tools/validator/internal/
wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/
wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/
Author: seanoc
Date: Mon Aug 25 07:25:49 2008
New Revision: 688735
URL: http://svn.apache.org/viewvc?rev=688735&view=rev
Log:
Fix for https://issues.apache.org/jira/browse/CXF-1694
NPE with invalid wsld:impor
Added:
cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/
cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/child.wsdl
cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/test.wsdl
Modified:
cxf/trunk/tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSDLRefValidator.java
cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java
Modified: cxf/trunk/tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSDLRefValidator.java
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSDLRefValidator.java?rev=688735&r1=688734&r2=688735&view=diff
==============================================================================
--- cxf/trunk/tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSDLRefValidator.java (original)
+++ cxf/trunk/tools/validator/src/main/java/org/apache/cxf/tools/validator/internal/WSDLRefValidator.java Mon Aug 25 07:25:49 2008
@@ -247,7 +247,7 @@
vNode.getPlainText()));
}
}
- } catch (ToolException e) {
+ } catch (Exception e) {
this.vResults.addError(e.getMessage());
return false;
}
@@ -393,7 +393,7 @@
}
@SuppressWarnings("unchecked")
- private void collectValidationPoints() {
+ private void collectValidationPoints() throws Exception {
if (services.size() == 0) {
LOG.log(Level.WARNING, "WSDL document "
+ this.definition.getDocumentBaseURI() + " does not define any services");
@@ -407,7 +407,7 @@
collectValidationPointsForMessages();
}
- private void collectValidationPointsForBindings() {
+ private void collectValidationPointsForBindings() throws Exception {
Map<QName, XNode> vBindingNodes = new HashMap<QName, XNode>();
for (Service service : services.values()) {
vBindingNodes.putAll(getBindings(service));
@@ -415,6 +415,12 @@
for (QName bName : vBindingNodes.keySet()) {
Binding binding = this.definition.getBinding(bName);
+ if (binding == null) {
+ LOG.log(Level.SEVERE, bName.toString()
+ + " is not correct, please check that the correct namespace is being used");
+ throw new Exception(bName.toString()
+ + " is not correct, please check that the correct namespace is being used");
+ }
XNode vBindingNode = getXNode(binding);
vBindingNode.setFailurePoint(vBindingNodes.get(bName));
vNodes.add(vBindingNode);
Modified: cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java?rev=688735&r1=688734&r2=688735&view=diff
==============================================================================
--- cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java (original)
+++ cxf/trunk/tools/wsdlto/test/src/test/java/org/apache/cxf/tools/wsdlto/jaxws/CodeGenBugTest.java Mon Aug 25 07:25:49 2008
@@ -1041,5 +1041,18 @@
assertEquals("GreeterSOAPService", webServiceAnn.serviceName());
assertEquals("PingSoapPort", webServiceAnn.portName());
}
+
+
+ @Test
+ public void testCXF1694() throws Exception {
+
+ try {
+ env.put(ToolConstants.CFG_WSDLURL, getLocation("/wsdl2java_wsdl/cxf1694/test.wsdl"));
+ processor.setContext(env);
+ processor.execute();
+ } catch (Exception ex) {
+ assertTrue(ex.getMessage().contains("{http://child/}Binding is not correct"));
+ }
+ }
}
Added: cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/child.wsdl
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/child.wsdl?rev=688735&view=auto
==============================================================================
--- cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/child.wsdl (added)
+++ cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/child.wsdl Mon Aug 25 07:25:49 2008
@@ -0,0 +1,39 @@
+<wsdl:definitions name="Child"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ xmlns:tns="http://child/"
+ xmlns:xsd="http://child/xsd"
+ targetNamespace="http://child/">
+ <wsdl:types>
+ <xs:schema targetNamespace="http://child/xsd">
+ <xs:element name="Message">
+ <xs:complexType>
+ <xs:sequence/>
+ </xs:complexType>
+ </xs:element>
+ </xs:schema>
+ </wsdl:types>
+ <wsdl:message name="Message">
+ <wsdl:part name="msg" element="xsd:Message"/>
+ </wsdl:message>
+ <wsdl:portType name="PortType">
+ <wsdl:operation name="Operation">
+ <wsdl:input message="tns:Message"/>
+ </wsdl:operation>
+ </wsdl:portType>
+ <wsdl:binding name="Binding" type="tns:PortType">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
+ <wsdl:operation name="Operation">
+ <soap:operation style="document"/>
+ <wsdl:input>
+ <soap:body use="literal"/>
+ </wsdl:input>
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:service name="Service">
+ <wsdl:port name="Port" binding="tns:Binding">
+ <soap:address location="http://localhost/service" />
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>
\ No newline at end of file
Added: cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/test.wsdl
URL: http://svn.apache.org/viewvc/cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/test.wsdl?rev=688735&view=auto
==============================================================================
--- cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/test.wsdl (added)
+++ cxf/trunk/tools/wsdlto/test/src/test/resources/wsdl2java_wsdl/cxf1694/test.wsdl Mon Aug 25 07:25:49 2008
@@ -0,0 +1,3 @@
+<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" name="Parent">
+ <wsdl:import namespace="http://incorrect-namespace" location="child.wsdl" />
+</wsdl:definitions>
\ No newline at end of file