[JBoss JIRA] Updated: (JBWS-751) Multiple schema imports with the same namespace
by Alessio Soldano (JIRA)
[ https://jira.jboss.org/browse/JBWS-751?page=com.atlassian.jira.plugin.sys... ]
Alessio Soldano updated JBWS-751:
---------------------------------
Fix Version/s: (was: jbossws-native-3.4.1)
> Multiple schema imports with the same namespace
> -----------------------------------------------
>
> Key: JBWS-751
> URL: https://jira.jboss.org/browse/JBWS-751
> Project: JBoss Web Services
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: tools-jaxrpc
> Reporter: Thomas Diesler
>
> <types>
> <xs:schema>
> <xs:import namespace="uri:tranHistory" schemaLocation="TransactionHistoryRq.xsd"/>
> <xs:import namespace="uri:tranHistory" schemaLocation="TransactionHistoryRs.xsd"/>
> <xs:import namespace="uri:tranHistory" schemaLocation="StatusRs.xsd"/>
> </xs:schema>
> </types>
> Current handling of schema imports is incorrect, since it does not allow for multiple imports with the same namespace.
> private void handleSchemaImports(Element schemaEl, URL wsdlLoc) throws MalformedURLException
> {
> if (wsdlLoc == null)
> throw new IllegalArgumentException("Cannot process import, parent location not set");
>
> Iterator it = DOMUtils.getChildElements(schemaEl, new QName(Constants.NS_SCHEMA_XSD, "import"));
> while (it.hasNext())
> {
> Element includeEl = (Element)it.next();
> String schemaLocation = includeEl.getAttribute("schemaLocation");
> String namespace = includeEl.getAttribute("namespace");
>
> log.trace("handleSchemaImport: [namespace=" + namespace + ",schemaLocation=" + schemaLocation + "]");
>
> // Skip, let the entity resolver resolve these
> if (namespace.length() > 0 && schemaLocation.length() > 0)
> {
> URL currLoc = this.getLocationURL(wsdlLoc, schemaLocation);
> schemaLocationsMap.put(namespace, currLoc);
> }
> else
> {
> log.warn("Skip invalid schema import: [namespace=" + namespace + ",schemaLocation=" + schemaLocation + "]");
> }
> }
> }
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira