Author: sagara Date: Wed Sep 28 10:16:28 2011 New Revision: 1176811 URL: http://svn.apache.org/viewvc?rev=1176811&view=rev Log: Applied patch for AXIS2-5136.
Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/repository/util/ArchiveReader.java axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARBasedWSDLLocator.java Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/repository/util/ArchiveReader.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/repository/util/ArchiveReader.java?rev=1176811&r1=1176810&r2=1176811&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/repository/util/ArchiveReader.java (original) +++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/repository/util/ArchiveReader.java Wed Sep 28 10:16:28 2011 @@ -225,12 +225,10 @@ public class ArchiveReader implements De serviceArchiveFile.getCanonicalFile().toURI().toString()); } else if (axisServiceBuilder instanceof WSDL20ToAllAxisServicesBuilder) { - ((WSDL20ToAllAxisServicesBuilder) axisServiceBuilder).setCustomWSDLResolver( - new AARBasedWSDLLocator(baseURI, serviceArchiveFile, in)); // trying to use the jar scheme as the base URI. I think this can be used to handle // wsdl 1.1 as well without using a custom URI resolver. Need to look at it later. axisServiceBuilder.setBaseUri( - "jar:file://" + serviceArchiveFile.toURI() + "!/" + baseURI); + "jar:" + serviceArchiveFile.toURI() + "!/" + baseURI); } } else { if (serviceArchiveFile != null) { Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARBasedWSDLLocator.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARBasedWSDLLocator.java?rev=1176811&r1=1176810&r2=1176811&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARBasedWSDLLocator.java (original) +++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARBasedWSDLLocator.java Wed Sep 28 10:16:28 2011 @@ -152,4 +152,28 @@ public class AARBasedWSDLLocator extends log.info("AARBasedWSDLLocator: Unable to resolve " + lastImportLocation); return null; } + + /** + * Override logic in DefaultURIResolver class + * to include more schemes (protocols) + * + * @param uri + * @return boolean + */ + protected boolean isAbsolute(String uri) { + String[] protocols = { + "http://", + "https://", + "file:/", + "jar:", + }; + + for (int i = 0; i < protocols.length; i++) { + if (uri.startsWith(protocols[i])) { + return true; + } + } + + return false; + } } \ No newline at end of file