Author: amilas Date: Fri Dec 24 16:36:39 2010 New Revision: 1052529 URL: http://svn.apache.org/viewvc?rev=1052529&view=rev Log: applied to method suggested in AXIS2-3191 to fixe relative schema import problem
Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARBasedWSDLLocator.java axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARFileBasedURIResolver.java 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=1052529&r1=1052528&r2=1052529&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 Fri Dec 24 16:36:39 2010 @@ -73,7 +73,7 @@ public class AARBasedWSDLLocator extends public InputSource getImportInputSource(String parentLocation, String importLocation) { lastImportLocation = URI.create(parentLocation).resolve(importLocation); - if (isAbsolute(importLocation)) { + if (isAbsolute(lastImportLocation.toString())) { return super.resolveEntity( null, importLocation, parentLocation); } else { Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARFileBasedURIResolver.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARFileBasedURIResolver.java?rev=1052529&r1=1052528&r2=1052529&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARFileBasedURIResolver.java (original) +++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver/AARFileBasedURIResolver.java Fri Dec 24 16:36:39 2010 @@ -52,8 +52,12 @@ public class AARFileBasedURIResolver ext String targetNamespace, String schemaLocation, String baseUri) { - //no issue with - if (isAbsolute(schemaLocation)) { + //no issue with abloslute schemas + // this schema can be in a relative location for another base scheama. so first + // try to see the proper location + + lastImportLocation = URI.create(baseUri).resolve(schemaLocation); + if (isAbsolute(lastImportLocation.toString())) { return super.resolveEntity( targetNamespace, schemaLocation, baseUri); } else { @@ -63,7 +67,6 @@ public class AARFileBasedURIResolver ext "Unsupported schema location " + schemaLocation); } - lastImportLocation = URI.create(baseUri).resolve(schemaLocation); ZipInputStream zin = null; try { zin = new ZipInputStream(new FileInputStream(aarFile)); @@ -106,4 +109,5 @@ public class AARFileBasedURIResolver ext log.info("AARFileBasedURIResolver: Unable to resolve" + lastImportLocation); return null; } + }