Author: slaws
Date: Thu Aug 14 04:16:02 2008
New Revision: 685853

URL: http://svn.apache.org/viewvc?rev=685853&view=rev
Log:
TUSCANY-2535 Take account of spaces that may occur in composite/contribution 
path names

Modified:
    
tuscany/branches/sca-java-1.3.1/modules/node2-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java

Modified: 
tuscany/branches/sca-java-1.3.1/modules/node2-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.3.1/modules/node2-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java?rev=685853&r1=685852&r2=685853&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.3.1/modules/node2-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java
 (original)
+++ 
tuscany/branches/sca-java-1.3.1/modules/node2-impl/src/main/java/org/apache/tuscany/sca/node/impl/NodeImpl.java
 Thu Aug 14 04:16:02 2008
@@ -27,6 +27,7 @@
 import java.net.URI;
 import java.net.URL;
 import java.net.URLClassLoader;
+import java.net.URLConnection;
 import java.security.AccessController;
 import java.security.PrivilegedAction;
 import java.security.PrivilegedActionException;
@@ -454,6 +455,18 @@
         monitor = monitorFactory.createMonitor();
     }
 
+    /**
+     * Escape the space in URL string
+     * @param uri
+     * @return
+     */
+    private static URI createURI(String uri) {
+        if (uri.indexOf(' ') != -1) {
+            uri = uri.replace(" ", "%20");
+        }
+        return URI.create(uri);
+    }
+    
     private void configureNode(ConfiguredNodeImplementation configuration) 
throws Exception {
 
         // Find if any contribution JARs already available locally on the 
classpath
@@ -463,7 +476,7 @@
         ContributionService contributionService = 
runtime.getContributionService();
         List<Contribution> contributions = new ArrayList<Contribution>();
         for (Contribution contribution : configuration.getContributions()) {
-            URI uri = URI.create(contribution.getLocation());
+               URI uri = createURI(contribution.getLocation());
             if (uri.getScheme() == null) {
                 uri = new File(contribution.getLocation()).toURI();
             }
@@ -503,13 +516,16 @@
         // Load the specified composite
         StAXArtifactProcessor<Composite> compositeProcessor = 
artifactProcessors.getProcessor(Composite.class);
         if (configuration.getComposite().getName() == null) {
-            URI uri = URI.create(configuration.getComposite().getURI());
+               URI uri = createURI(configuration.getComposite().getURI());
             if (uri.getScheme() == null) {
                 uri = new File(configuration.getComposite().getURI()).toURI();
             }
             URL compositeURL = uri.toURL();
             logger.log(Level.INFO, "Loading composite: " + compositeURL);
-            InputStream is = compositeURL.openStream();
+            URLConnection connection = compositeURL.openConnection();
+            connection.setDefaultUseCaches(false);
+            connection.setUseCaches(false);
+            InputStream is = connection.getInputStream();
             XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
             composite = compositeProcessor.read(reader);
         } else {


Reply via email to