Author: jboynes
Date: Mon Apr 17 14:00:55 2006
New Revision: 394775
URL: http://svn.apache.org/viewcvs?rev=394775&view=rev
Log:
applied patch from Dan Kulp for TUSCANY-201
Modified:
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/WSDLDefinitionRegistry.java
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/impl/WSDLDefinitionRegistryImpl.java
Modified:
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/WSDLDefinitionRegistry.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/WSDLDefinitionRegistry.java?rev=394775&r1=394774&r2=394775&view=diff
==============================================================================
---
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/WSDLDefinitionRegistry.java
(original)
+++
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/WSDLDefinitionRegistry.java
Mon Apr 17 14:00:55 2006
@@ -22,6 +22,7 @@
import javax.wsdl.PortType;
import javax.wsdl.Service;
import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensionRegistry;
import javax.xml.namespace.QName;
/**
@@ -54,4 +55,13 @@
* @return the Service for the supplied name, or null if none has been
defined
*/
Service getService(QName name);
+
+
+ /**
+ * Returns the ExtensionRegistry that is used when parsing WSDL documents
during the
+ * loadDefinition call.
+ *
+ * @return the ExtensionRegistry that is used when parsing WSDL documents.
+ */
+ ExtensionRegistry getExtensionRegistry();
}
Modified:
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/impl/WSDLDefinitionRegistryImpl.java
URL:
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/impl/WSDLDefinitionRegistryImpl.java?rev=394775&r1=394774&r2=394775&view=diff
==============================================================================
---
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/impl/WSDLDefinitionRegistryImpl.java
(original)
+++
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/impl/WSDLDefinitionRegistryImpl.java
Mon Apr 17 14:00:55 2006
@@ -26,6 +26,7 @@
import javax.wsdl.PortType;
import javax.wsdl.Service;
import javax.wsdl.WSDLException;
+import javax.wsdl.extensions.ExtensionRegistry;
import javax.wsdl.factory.WSDLFactory;
import javax.wsdl.xml.WSDLReader;
import javax.xml.namespace.QName;
@@ -38,6 +39,7 @@
@org.osoa.sca.annotations.Service(interfaces = {WSDLDefinitionRegistry.class})
public class WSDLDefinitionRegistryImpl implements WSDLDefinitionRegistry {
private final WSDLFactory wsdlFactory;
+ private final ExtensionRegistry registry;
private final Map<URL, Definition> definitionsByLocation = new
HashMap<URL, Definition>();
private final Map<String, List<Definition>> definitionsByNamespace = new
HashMap<String, List<Definition>>();
@@ -46,6 +48,7 @@
public WSDLDefinitionRegistryImpl() throws WSDLException {
wsdlFactory = WSDLFactory.newInstance();
+ registry = wsdlFactory.newPopulatedExtensionRegistry();
}
@org.apache.tuscany.core.system.annotation.Monitor
@@ -53,6 +56,10 @@
this.monitor = monitor;
}
+ public ExtensionRegistry getExtensionRegistry() {
+ return registry;
+ }
+
public Definition loadDefinition(String namespace, URL location) throws
IOException, WSDLException {
Definition definition = definitionsByLocation.get(location);
if (definition != null) {
@@ -63,6 +70,7 @@
monitor.readingWSDL(namespace, location);
WSDLReader reader = wsdlFactory.newWSDLReader();
reader.setFeature("javax.wsdl.verbose", false);
+ reader.setExtensionRegistry(registry);
definition = reader.readWSDL(location.toString());
String definitionNamespace = definition.getTargetNamespace();
@@ -131,4 +139,5 @@
*/
void cachingDefinition(String namespace, URL location);
}
+
}