Author: peter_firmstone Date: Wed Jul 18 07:55:34 2012 New Revision: 1362797
URL: http://svn.apache.org/viewvc?rev=1362797&view=rev Log: Another attempt to fix windows issues from afar. Modified: river/jtsk/trunk/qa/src/com/sun/jini/qa/resources/qaDefaults.properties river/jtsk/trunk/src/org/apache/river/api/security/DefaultPolicyParser.java Modified: river/jtsk/trunk/qa/src/com/sun/jini/qa/resources/qaDefaults.properties URL: http://svn.apache.org/viewvc/river/jtsk/trunk/qa/src/com/sun/jini/qa/resources/qaDefaults.properties?rev=1362797&r1=1362796&r2=1362797&view=diff ============================================================================== --- river/jtsk/trunk/qa/src/com/sun/jini/qa/resources/qaDefaults.properties (original) +++ river/jtsk/trunk/qa/src/com/sun/jini/qa/resources/qaDefaults.properties Wed Jul 18 07:55:34 2012 @@ -222,7 +222,6 @@ com.sun.jini.qa.harness.actdeathdelay=5 # no cosmetic whitespace com.sun.jini.qa.harness.globalvmargs=\ -Djava.ext.dirs=${java.ext.dirs},\ --Djava.security.debug=access:failure,\ -Dcom.sun.jini.jsk.port=${com.sun.jini.jsk.port},\ -Dcom.sun.jini.qa.port=${com.sun.jini.qa.port},\ -Dcom.sun.jini.jsk.home=${com.sun.jini.jsk.home},\ Modified: river/jtsk/trunk/src/org/apache/river/api/security/DefaultPolicyParser.java URL: http://svn.apache.org/viewvc/river/jtsk/trunk/src/org/apache/river/api/security/DefaultPolicyParser.java?rev=1362797&r1=1362796&r2=1362797&view=diff ============================================================================== --- river/jtsk/trunk/src/org/apache/river/api/security/DefaultPolicyParser.java (original) +++ river/jtsk/trunk/src/org/apache/river/api/security/DefaultPolicyParser.java Wed Jul 18 07:55:34 2012 @@ -22,6 +22,8 @@ package org.apache.river.api.security; +import java.net.MalformedURLException; +import java.net.URISyntaxException; import org.apache.river.impl.net.UriString; import java.io.BufferedReader; import java.io.File; @@ -205,13 +207,13 @@ class DefaultPolicyParser implements Pol Collection<String> cbstr = expandURLs(cb, system); Iterator<String> it = cbstr.iterator(); while (it.hasNext()){ - codebases.add(new URI(UriString.escapeIllegalCharacters(it.next()))); + codebases.add(getURI(it.next())); } } catch (ExpansionFailedException e) { - codebases.add(new URI(UriString.escapeIllegalCharacters(cb))); + codebases.add(getURI(cb)); } } else { - codebases.add(new URI(UriString.escapeIllegalCharacters(cb))); + codebases.add(getURI(cb)); } } if ( signerString != null) { @@ -265,6 +267,16 @@ class DefaultPolicyParser implements Pol .build(); } + URI getURI(String uri) throws MalformedURLException, URISyntaxException{ + // We do this to support windows, this is to ensure that drive letter + // capitalisation is correct and illegal strings are escaped correctly. + // It give the native parser a chance to correctly parse and format + // platform specific information. + String url = new URL(uri).toString(); + if (url == null || url.equals("")) return new URI(UriString.escapeIllegalCharacters(uri)); + return new URI(UriString.escapeIllegalCharacters(url)); + } + Segment segment(String s, Properties p) throws ExpansionFailedException{ final String ARRAY_START_MARK = "${{"; final String ARRAY_END_MARK = "}}";
