KARAF-2109 When Karaf installation directory contains a space, EIK does not 
work : Fix

git-svn-id: https://svn.apache.org/repos/asf/karaf/eik/trunk@1446879 
13f79535-47bb-0310-9956-ffa450edef68


Project: http://git-wip-us.apache.org/repos/asf/karaf-eik/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf-eik/commit/3a0818cf
Tree: http://git-wip-us.apache.org/repos/asf/karaf-eik/tree/3a0818cf
Diff: http://git-wip-us.apache.org/repos/asf/karaf-eik/diff/3a0818cf

Branch: refs/heads/master
Commit: 3a0818cf9c1fd45b6ff532c888cd8ee4968b6b2a
Parents: fdd41b0
Author: fbalicchia <fbalicchia@13f79535-47bb-0310-9956-ffa450edef68>
Authored: Sat Feb 16 12:16:35 2013 +0000
Committer: fbalicchia <fbalicchia@13f79535-47bb-0310-9956-ffa450edef68>
Committed: Sat Feb 16 12:16:35 2013 +0000

----------------------------------------------------------------------
 .../eik/core/model/GenericKarafPlatformModel.java      | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf-eik/blob/3a0818cf/plugins/org.apache.karaf.eik.core/src/main/java/org/apache/karaf/eik/core/model/GenericKarafPlatformModel.java
----------------------------------------------------------------------
diff --git 
a/plugins/org.apache.karaf.eik.core/src/main/java/org/apache/karaf/eik/core/model/GenericKarafPlatformModel.java
 
b/plugins/org.apache.karaf.eik.core/src/main/java/org/apache/karaf/eik/core/model/GenericKarafPlatformModel.java
index 9c556ea..7ee0db7 100644
--- 
a/plugins/org.apache.karaf.eik.core/src/main/java/org/apache/karaf/eik/core/model/GenericKarafPlatformModel.java
+++ 
b/plugins/org.apache.karaf.eik.core/src/main/java/org/apache/karaf/eik/core/model/GenericKarafPlatformModel.java
@@ -38,8 +38,10 @@ import org.apache.karaf.eik.core.shell.KarafSshConnectionUrl;
 
 import java.io.File;
 import java.io.IOException;
+import java.io.UnsupportedEncodingException;
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.net.URLDecoder;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -151,10 +153,19 @@ public class GenericKarafPlatformModel extends 
AbstractKarafPlatformModel implem
         for (final File f : files) {
             try {
                 final URL u = f.toURI().toURL();
-                urls.add(u);
+                // Mandatory to Decode URL. please see
+                               // 
https://bugs.eclipse.org/bugs/show_bug.cgi?id=258368
+               String urlDecoded = URLDecoder.decode(u.toString(),
+                                               
System.getProperty("file.encoding"));
+                urls.add(new URL(urlDecoded));
             } catch (final MalformedURLException e) {
                 KarafCorePluginActivator.getLogger().error(
                                 "Unable to convert file to URL: " + 
f.getAbsolutePath(), e);
+            }catch (UnsupportedEncodingException e) {
+                               KarafCorePluginActivator.getLogger().error(
+                                               "UnsupportedEncodingException 
to convert file path : "
+                                                               + 
f.getAbsolutePath() + "with encoding "
+                                                               + 
System.getProperty("file.encoding") , e);
             }
         }
 

Reply via email to