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 sa...@apache.org on 2011/09/28 12:16:28 UTC

svn commit: r1176811 - in /axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/deployment: repository/util/ArchiveReader.java resolver/AARBasedWSDLLocator.java

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