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 ve...@apache.org on 2015/10/20 00:27:02 UTC

svn commit: r1709487 - in /axis/axis2/java/core/branches/1_6: ./ modules/kernel/src/org/apache/axis2/classloader/ modules/kernel/src/org/apache/axis2/deployment/ modules/kernel/src/org/apache/axis2/deployment/repository/util/ modules/kernel/src/org/apa...

Author: veithen
Date: Mon Oct 19 22:27:01 2015
New Revision: 1709487

URL: http://svn.apache.org/viewvc?rev=1709487&view=rev
Log:
AXIS2-5729: Merge r1352428 and r1709481 to the 1.6 branch.

Modified:
    axis/axis2/java/core/branches/1_6/   (props changed)
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceHandle.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceLocation.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlConnection.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlStreamHandler.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/UrlResourceFinder.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/DeploymentEngine.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/ModuleDeployer.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/POJODeployer.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/RepositoryListener.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/ServiceDeployer.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/repository/util/DeploymentFileData.java
    axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java
    axis/axis2/java/core/branches/1_6/modules/kernel/test/org/apache/axis2/classloader/JarFileClassLoaderTest.java

Propchange: axis/axis2/java/core/branches/1_6/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Oct 19 22:27:01 2015
@@ -1 +1 @@
-/axis/axis2/java/core/trunk:1068985,1069659,1069898,1070439,1072077,1072271,1072296,1072499,1072510,1075057,1078242,1081563,1081587,1081590,1082316,1082322,1082600,1082702,1082726,1082738,1083180,1083192,1083379,1083381,1083425,1083433,1083446,1084753,1085157,1085173,1085514,1085889,1085927,1085931,1087073,1088239,1088248-1088249,1088251,1088268,1088730,1088904,1089225,1089989,1090429,1090457,1091178,1091191,1094117,1096134,1096136,1096530,1096557,1099385,1099389,1100628,1101037,1103013,1103336,1103606,1103760,1127327,1128580,1128584,1128618,1128645,1130590,1131425,1134438,1134616,1136156,1136159,1136177,1137153,1137159,1138144,1138203,1139448,1139484,1147485,1149224,1149491,1149578,1150055,1153072,1154615,1156305,1156382,1157211,1157265,1157373,1157415,1157424,1157501,1157517,1157522,1157535,1157767,1162649,1163389,1166038,1166040,1166132,1167045,1173869,1174618,1184808,1184810,1184816,1185504,1190469,1190499,1195893,1195972,1195982,1198288,1201467,1201863,1201957,1202867,1203424,1
 205716,1205939,1208901,1209034,1213180,1213639,1214118,1220630,1220888,1221716,1222510,1225161,1231465,1231470,1241031,1242238,1242249,1242511,1243469,1243831,1290999,1291158,1294991,1295084,1295479,1296159,1297132,1297344,1297348,1297744,1297765,1298550,1298688,1299356,1299392,1299645,1299667,1300358,1305728,1307410,1326968,1327005,1328228,1328733,1328921,1329084,1331616,1332362,1332402,1332545,1332587,1337975,1340970,1341090,1341780,1341805,1343353,1343543,1348340,1351218,1352413,1352423,1354438,1354834,1355706,1355710,1356080,1358413,1358494,1358508,1358691,1359499,1359504,1360573,1362377,1364536,1372622,1382245,1383043,1384482,1409145,1409389,1410313,1410499,1410577,1426464,1426467,1426469,1434104,1435330,1438985,1441907,1442712,1443222,1479068,1479351,1480969,1509409,1509438,1510122,1576937,1577055,1577119,1577125,1577191,1577342-1577345,1577347-1577348,1593690,1593765,1594378,1594701,1601455,1608843,1609578,1609866,1621171-1621172,1626559,1631608,1649688,1677432,1683827,168383
 1,1686316,1686321,1686538,1686544,1686553,1686630,1686643,1686742,1687894-1687895,1687902,1687961,1693147,1693802,1693808,1694745,1697181,1697205,1697514,1701352,1701354,1702667,1702678
+/axis/axis2/java/core/trunk:1068985,1069659,1069898,1070439,1072077,1072271,1072296,1072499,1072510,1075057,1078242,1081563,1081587,1081590,1082316,1082322,1082600,1082702,1082726,1082738,1083180,1083192,1083379,1083381,1083425,1083433,1083446,1084753,1085157,1085173,1085514,1085889,1085927,1085931,1087073,1088239,1088248-1088249,1088251,1088268,1088730,1088904,1089225,1089989,1090429,1090457,1091178,1091191,1094117,1096134,1096136,1096530,1096557,1099385,1099389,1100628,1101037,1103013,1103336,1103606,1103760,1127327,1128580,1128584,1128618,1128645,1130590,1131425,1134438,1134616,1136156,1136159,1136177,1137153,1137159,1138144,1138203,1139448,1139484,1147485,1149224,1149491,1149578,1150055,1153072,1154615,1156305,1156382,1157211,1157265,1157373,1157415,1157424,1157501,1157517,1157522,1157535,1157767,1162649,1163389,1166038,1166040,1166132,1167045,1173869,1174618,1184808,1184810,1184816,1185504,1190469,1190499,1195893,1195972,1195982,1198288,1201467,1201863,1201957,1202867,1203424,1
 205716,1205939,1208901,1209034,1213180,1213639,1214118,1220630,1220888,1221716,1222510,1225161,1231465,1231470,1241031,1242238,1242249,1242511,1243469,1243831,1290999,1291158,1294991,1295084,1295479,1296159,1297132,1297344,1297348,1297744,1297765,1298550,1298688,1299356,1299392,1299645,1299667,1300358,1305728,1307410,1326968,1327005,1328228,1328733,1328921,1329084,1331616,1332362,1332402,1332545,1332587,1337975,1340970,1341090,1341780,1341805,1343353,1343543,1348340,1351218,1352413,1352423,1352428,1354438,1354834,1355706,1355710,1356080,1358413,1358494,1358508,1358691,1359499,1359504,1360573,1362377,1364536,1372622,1382245,1383043,1384482,1409145,1409389,1410313,1410499,1410577,1426464,1426467,1426469,1434104,1435330,1438985,1441907,1442712,1443222,1479068,1479351,1480969,1509409,1509438,1510122,1576937,1577055,1577119,1577125,1577191,1577342-1577345,1577347-1577348,1593690,1593765,1594378,1594701,1601455,1608843,1609578,1609866,1621171-1621172,1626559,1631608,1649688,1677432,168382
 7,1683831,1686316,1686321,1686538,1686544,1686553,1686630,1686643,1686742,1687894-1687895,1687902,1687961,1693147,1693802,1693808,1694745,1697181,1697205,1697514,1701352,1701354,1702667,1702678,1709481

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceHandle.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceHandle.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceHandle.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceHandle.java Mon Oct 19 22:27:01 2015
@@ -39,9 +39,9 @@ public class DirectoryResourceHandle ext
     public DirectoryResourceHandle(String name, File file, File codeSource, Manifest manifest) throws MalformedURLException {
         this.name = name;
         this.file = file;
-        this.codeSource = codeSource.toURL();
+        this.codeSource = codeSource.toURI().toURL();
         this.manifest = manifest;
-        url = file.toURL();
+        url = file.toURI().toURL();
     }
 
     public String getName() {

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceLocation.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceLocation.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceLocation.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/DirectoryResourceLocation.java Mon Oct 19 22:27:01 2015
@@ -31,7 +31,7 @@ public class DirectoryResourceLocation e
     private Manifest manifest;
 
     public DirectoryResourceLocation(File baseDir) throws MalformedURLException {
-        super(baseDir.toURL());
+        super(baseDir.toURI().toURL());
         this.baseDir = baseDir;
     }
 

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlConnection.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlConnection.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlConnection.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlConnection.java Mon Oct 19 22:27:01 2015
@@ -66,7 +66,7 @@ public class JarFileUrlConnection extend
         this.url = url;
         this.jarFile = jarFile;
         this.jarEntry = jarEntry;
-        jarFileUrl = new File(jarFile.getName()).toURL();
+        jarFileUrl = new File(jarFile.getName()).toURI().toURL();
     }
 
     public JarFile getJarFile() throws IOException {
@@ -125,7 +125,7 @@ public class JarFileUrlConnection extend
     }
 
     public Permission getPermission() throws IOException {
-        URL jarFileUrl = new File(jarFile.getName()).toURL();
+        URL jarFileUrl = new File(jarFile.getName()).toURI().toURL();
         return jarFileUrl.openConnection().getPermission();
     }
 

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlStreamHandler.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlStreamHandler.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlStreamHandler.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/JarFileUrlStreamHandler.java Mon Oct 19 22:27:01 2015
@@ -34,7 +34,7 @@ import java.util.jar.JarFile;
  */
 public class JarFileUrlStreamHandler extends URLStreamHandler {
     public static URL createUrl(JarFile jarFile, JarEntry jarEntry) throws MalformedURLException {
-        return createUrl(jarFile, jarEntry, new File(jarFile.getName()).toURL());
+        return createUrl(jarFile, jarEntry, new File(jarFile.getName()).toURI().toURL());
     }
 
     public static URL createUrl(JarFile jarFile, JarEntry jarEntry, URL codeSource) throws MalformedURLException {

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/UrlResourceFinder.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/UrlResourceFinder.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/UrlResourceFinder.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/classloader/UrlResourceFinder.java Mon Oct 19 22:27:01 2015
@@ -20,6 +20,7 @@ import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.net.MalformedURLException;
+import java.net.URISyntaxException;
 import java.net.URL;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -185,10 +186,13 @@ public class UrlResourceFinder implement
                     } catch (FileNotFoundException e) {
                         // if this is a file URL, the file doesn't exist yet... watch to see if it appears later
                         if ("file".equals(url.getProtocol())) {
-                            File file = new File(url.getPath());
-                            watchedFiles.add(file);
-                            continue;
-
+                            try {
+                                File file = new File(url.toURI());
+                                watchedFiles.add(file);
+                                continue;
+                            } catch (URISyntaxException ex) {
+                                // Ignore; we should never get here
+                            }
                         }
                     } catch (IOException ignored) {
                         // can't seem to open the file... this is most likely a bad jar file
@@ -226,7 +230,12 @@ public class UrlResourceFinder implement
             throw new UnsupportedOperationException("Only local file jars are supported " + url);
         }
 
-        File file = new File(url.getPath());
+        File file;
+        try {
+            file = new File(url.toURI());
+        } catch (URISyntaxException ex) {
+            throw new IOException("Invalid file URL");
+        }
         if (!file.exists()) {
             throw new FileNotFoundException(file.getAbsolutePath());
         }

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/DeploymentEngine.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/DeploymentEngine.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/DeploymentEngine.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/DeploymentEngine.java Mon Oct 19 22:27:01 2015
@@ -160,7 +160,7 @@ public abstract class DeploymentEngine i
                 .calculateDefaultModuleVersion(axisConfig.getModules(), axisConfig);
         try {
             try {
-                axisConfig.setRepository(axisRepo.toURL());
+                axisConfig.setRepository(axisRepo.toURI().toURL());
             } catch (MalformedURLException e) {
                 log.info(e.getMessage());
             }

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/ModuleDeployer.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/ModuleDeployer.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/ModuleDeployer.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/ModuleDeployer.java Mon Oct 19 22:27:01 2015
@@ -75,7 +75,7 @@ public class ModuleDeployer extends Abst
             metaData.setModuleClassLoader(deploymentFileData.getClassLoader());
             metaData.setParent(axisConfig);
             archiveReader.readModuleArchive(deploymentFileData, metaData, isDirectory, axisConfig);
-            URL url = deploymentFile.toURL();
+            URL url = deploymentFile.toURI().toURL();
             metaData.setFileName(url);
             DeploymentEngine.addNewModule(metaData, axisConfig);
             super.deploy(deploymentFileData);

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/POJODeployer.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/POJODeployer.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/POJODeployer.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/POJODeployer.java Mon Oct 19 22:27:01 2015
@@ -108,7 +108,7 @@ public class POJODeployer extends Abstra
                     axisService =
                             createAxisServiceUsingAnnogen(className,
                                     classLoader,
-                                    deploymentFileData.getFile().toURL());
+                                    deploymentFileData.getFile().toURI().toURL());
                 }
                 //add the hierarchical path to the service name
                 axisService.setName(serviceHierarchy + axisService.getName());
@@ -119,11 +119,11 @@ public class POJODeployer extends Abstra
                 ArrayList<AxisService> axisServiceList = new ArrayList<AxisService>();
                 for (String className : classList) {
                     ArrayList<URL> urls = new ArrayList<URL>();
-                    urls.add(deploymentFileData.getFile().toURL());
+                    urls.add(deploymentFileData.getFile().toURI().toURL());
                     urls.add(configCtx.getAxisConfiguration().getRepository());
                     String webLocation = DeploymentEngine.getWebLocationString();
                     if (webLocation != null) {
-                        urls.add(new File(webLocation).toURL());
+                        urls.add(new File(webLocation).toURI().toURL());
                     }
                     ClassLoader classLoader = Utils.createClassLoader(
                             urls,

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/RepositoryListener.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/RepositoryListener.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/RepositoryListener.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/RepositoryListener.java Mon Oct 19 22:27:01 2015
@@ -25,7 +25,6 @@ import org.apache.axis2.deployment.repos
 import org.apache.axis2.deployment.repository.util.WSInfoList;
 import org.apache.axis2.deployment.util.Utils;
 import org.apache.axis2.util.Loader;
-import org.apache.axis2.i18n.Messages;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
@@ -36,9 +35,7 @@ import java.net.URISyntaxException;
 import java.net.URL;
 import java.net.URLClassLoader;
 import java.net.URLDecoder;
-import java.util.ArrayList;
 import java.util.Enumeration;
-import java.util.Iterator;
 import java.util.Map;
 
 public class RepositoryListener implements DeploymentConstants {

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/ServiceDeployer.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/ServiceDeployer.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/ServiceDeployer.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/ServiceDeployer.java Mon Oct 19 22:27:01 2015
@@ -83,7 +83,7 @@ public class ServiceDeployer extends Abs
                     deploymentFileData.getAbsolutePath(), deploymentFileData,
                     serviceGroup, isDirectory, wsdlservice,
                     configCtx);
-            URL location = deploymentFileData.getFile().toURL();
+            URL location = deploymentFileData.getFile().toURI().toURL();
 
             // Add the hierarchical path to the service group
             if (location != null) {

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/repository/util/DeploymentFileData.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/repository/util/DeploymentFileData.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/repository/util/DeploymentFileData.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/repository/util/DeploymentFileData.java Mon Oct 19 22:27:01 2015
@@ -111,7 +111,7 @@ public class DeploymentFileData {
                         throw new AxisFault(Messages.getMessage(DeploymentErrorMsgs.FILE_NOT_FOUND,
                                                                 this.file.getAbsolutePath()));
                     }
-                    urlsToLoadFrom = new URL[]{this.file.toURL()};
+                    urlsToLoadFrom = new URL[]{this.file.toURI().toURL()};
                     classLoader = Utils.createClassLoader(urlsToLoadFrom, parent, true, file, isChildFirstClassLoading);
                 } catch (Exception e) {
                     throw AxisFault.makeFault(e);

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/src/org/apache/axis2/deployment/util/Utils.java Mon Oct 19 22:27:01 2015
@@ -173,7 +173,7 @@ public class Utils {
                             return new FileInputStream(f);
                         }
                     });
-            array.add(f.toURL());
+            array.add(f.toURI().toURL());
             zin = new ZipInputStream(fin);
 
             ZipEntry entry;
@@ -189,7 +189,7 @@ public class Utils {
                     && entryName.toLowerCase().endsWith(".jar")) {
                     String suffix = entryName.substring(4);
                     File f2 = createTempFile(suffix, zin, tmpDir);
-                    array.add(f2.toURL());
+                    array.add(f2.toURI().toURL());
                 }
             }
             return (URL[])array.toArray(new URL[array.size()]);
@@ -330,7 +330,7 @@ public class Utils {
 
         try {
             ArrayList urls = new ArrayList();
-            urls.add(file.toURL());
+            urls.add(file.toURI().toURL());
 
             // lower case directory name
             File libfiles = new File(file, "lib");
@@ -386,7 +386,7 @@ public class Utils {
                     }
                 });
         if (exists) {
-            urls.add(libfiles.toURL());
+            urls.add(libfiles.toURI().toURL());
             File jarfiles[] = (File[])org.apache.axis2.java.security.AccessController
                     .doPrivileged(new PrivilegedAction() {
                         public Object run() {
@@ -397,7 +397,7 @@ public class Utils {
             while (i < jarfiles.length) {
                 File jarfile = jarfiles[i];
                 if (jarfile.getName().endsWith(".jar")) {
-                    urls.add(jarfile.toURL());
+                    urls.add(jarfile.toURI().toURL());
                 }
                 i++;
             }
@@ -808,7 +808,7 @@ public class Utils {
                                 return Thread.currentThread().getContextClassLoader();
                             }
                         });
-        return createDeploymentClassLoader(new URL[]{serviceFile.toURL()},
+        return createDeploymentClassLoader(new URL[]{serviceFile.toURI().toURL()},
                                            contextClassLoader, new ArrayList(), isChildFirstClassLoading);
     }
 

Modified: axis/axis2/java/core/branches/1_6/modules/kernel/test/org/apache/axis2/classloader/JarFileClassLoaderTest.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/branches/1_6/modules/kernel/test/org/apache/axis2/classloader/JarFileClassLoaderTest.java?rev=1709487&r1=1709486&r2=1709487&view=diff
==============================================================================
--- axis/axis2/java/core/branches/1_6/modules/kernel/test/org/apache/axis2/classloader/JarFileClassLoaderTest.java (original)
+++ axis/axis2/java/core/branches/1_6/modules/kernel/test/org/apache/axis2/classloader/JarFileClassLoaderTest.java Mon Oct 19 22:27:01 2015
@@ -28,6 +28,8 @@ import org.apache.commons.io.FileUtils;
 
 public class JarFileClassLoaderTest extends TestCase {
     private File tmpDir;
+    private File root;
+    private File dirWithSpaces;
     
     @Override
     protected void setUp() throws Exception {
@@ -39,13 +41,17 @@ public class JarFileClassLoaderTest exte
         // outside
         // root/a
         // root/dir/b
+        // dir with spaces
         FileUtils.touch(new File(tmpDir, "outside"));
-        File root = new File(tmpDir, "root");
+        root = new File(tmpDir, "root");
         root.mkdir();
         FileUtils.touch(new File(root, "a"));
         File dir = new File(root, "dir");
         dir.mkdir();
         FileUtils.touch(new File(dir, "b"));
+        dirWithSpaces = new File(tmpDir, "dir with spaces");
+        dirWithSpaces.mkdir();
+        FileUtils.touch(new File(dirWithSpaces, "test"));
     }
 
     @Override
@@ -66,9 +72,16 @@ public class JarFileClassLoaderTest exte
      * @throws Exception
      */
     public void testConfinement() throws Exception {
-        ClassLoader cl = new JarFileClassLoader(new URL[] { new File(tmpDir, "root").toURL() });
+        ClassLoader cl = new JarFileClassLoader(new URL[] { root.toURI().toURL() });
         assertNull(cl.getResource("../outside"));
         assertNotNull(cl.getResource("a"));
         assertNotNull(cl.getResource("dir/b"));
     }
+    
+    public void testClasspathElementWithSpaces() throws Exception {
+        ClassLoader cl = new JarFileClassLoader(new URL[] { dirWithSpaces.toURI().toURL() });
+        URL test = cl.getResource("test");
+        assertNotNull(test);
+        assertEquals(new File(dirWithSpaces, "test"), new File(test.toURI()));
+    }
 }