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


Reply via email to