You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by am...@apache.org on 2010/12/24 17:36:39 UTC

svn commit: r1052529 - in /axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment/resolver: AARBasedWSDLLocator.java AARFileBasedURIResolver.java

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;
     }
+    
 }