From 266944c621775f642334bc2ec5bc4215d5a01c92 Mon Sep 17 00:00:00 2001 From: slaws Date: Thu, 1 Jul 2010 13:42:49 +0000 Subject: TUSCANY-3604 add greater fidelity to the process of resolving WSDL by checking for required port type, binding, service as well as namespace during the resolution process. git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@959658 13f79535-47bb-0310-9956-ffa450edef68 --- .../wsdl/xml/WSDLDocumentProcessor.java | 14 +++++++++ .../wsdl/xml/WSDLInterfaceProcessor.java | 1 + .../interfacedef/wsdl/xml/WSDLModelResolver.java | 35 ++++++++++++++++++++-- 3 files changed, 48 insertions(+), 2 deletions(-) (limited to 'sca-java-2.x/trunk/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml') diff --git a/sca-java-2.x/trunk/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessor.java b/sca-java-2.x/trunk/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessor.java index 8291ef74ed..d2655bd88e 100644 --- a/sca-java-2.x/trunk/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessor.java +++ b/sca-java-2.x/trunk/modules/interface-wsdl/src/main/java/org/apache/tuscany/sca/interfacedef/wsdl/xml/WSDLDocumentProcessor.java @@ -215,6 +215,20 @@ public class WSDLDocumentProcessor implements URLArtifactProcessor wsdlImports = new HashMap(); InputStream is = doc.openStream(); try { - XMLInputFactory inputFactory = XMLInputFactory.newInstance(); - XMLStreamReader reader = inputFactory.createXMLStreamReader(is); + // Set up a StreamSource for the composite file, since this has an associated URL that + // can be used by the parser to find references to other files such as DTDs + XMLInputFactory inputFactory = XMLInputFactory.newInstance(); + StreamSource wsdlSource = new StreamSource(is, doc.toString()); + XMLStreamReader reader = inputFactory.createXMLStreamReader(wsdlSource); + int eventType = reader.getEventType(); while (true) { if (eventType == XMLStreamConstants.START_ELEMENT) { -- cgit v1.2.3