On 22/05/07, Felix Meschberger <[EMAIL PROTECTED]> wrote:
Hi,

I also had this problem and it turns out, that the URLs are actually wrong
because space is an unsafe character ([1]) and must always be encoded.
Unfortunately, the java.io.File.toURL() method handles blanks in path names
incorrectly and does NOT encoded them. The workaround since Java 1.4 is to
use java.io.File.toURI().toURL() (or just File.toURI().toString() when
preparing properties).

we do the same (ie. use toURI) in Pax Runner when creating the Felix
property file, to make sure any unsafe characters get encoded properly
(most browsers handle spaces ok, which makes them appear safe)

similarly, you have to be careful with the number of slashes after the
file: protocol, ie. *don't* use "file://" + path as this will be ok on unix
but break on windows (with file://c:/... c gets parsed as a hostname).


So, IMHO Felix is quite correct assuming a space delimited list is safe and
ok.

Regards
Felix

[1] - http://www.faqs.org/rfcs/rfc1738.html, Section 2.2 URL Character
Encoding Issues

On 5/22/07, Guillaume Nodet <[EMAIL PROTECTED]> wrote:
>
> I'm trying to understand how to configure / use the daemon / installer.
>
> After having changed the installers/pom.xml to reference the released
> version
> of ApacheDS (1.0-RC2 instead of 1.0-RC2-SNAPSHOT)  i was able to build
> the felix installers and install them on Windows.
>
> One of the problem was the lack of a felix configuration file, so I copied
> the one
> i used and try to start the service.
> Unfortunately, on Windows, the service is run from C:\windows\system32
> folder (or something like that), so I had troubles configuring bundles
> using
> the felix.auto.start.1 property.
>
> I've tried by prefixing the values with ${felix.home} that way
> felix.auto.start.1= \
> file:${felix.home}/bundle/org.apache.felix.shell-
> 0.9.0-incubator-SNAPSHOT.jar \
> file:${felix.home}/bundle/org.apache.felix.shell.tui-
> 0.9.0-incubator-SNAPSHOT.jar \
> file:${felix.home}/bundle/org.apache.felix.bundlerepository-
> 0.9.0-incubator-SNAPSHOT.jar
>
> but unfortunately, I had the following output:
>
> ERROR: Auto-properties install. (org.osgi.framework.BundleException:
> Unable
> to cache bundle: file:C:\Program)
> ERROR: Auto-properties install. (org.osgi.framework.BundleException:
> Unable
> to cache bundle: Files\felix-0.9.0-incubator-SNAPSHOT
> /bundle/org.apache.felix.shell-0.9.0-incubator-SNAPSHOT.jar)
> ERROR: Auto-properties install. (org.osgi.framework.BundleException:
> Unable
> to cache bundle: file:C:\Program)
> ERROR: Auto-properties install. (org.osgi.framework.BundleException:
> Unable
> to cache bundle: Files\felix-0.9.0-incubator-SNAPSHOT
> /bundle/org.apache.felix.shell.tui-0.9.0-incubator-SNAPSHOT.jar)
> ERROR: Auto-properties install. (org.osgi.framework.BundleException:
> Unable
> to cache bundle: file:C:\Program)
> ERROR: Auto-properties install. (org.osgi.framework.BundleException:
> Unable
> to cache bundle: Files\felix-0.9.0-incubator-SNAPSHOT
> /bundle/org.apache.felix.bundlerepository-0.9.0-incubator-SNAPSHOT.jar)
>
> So it seems the space in "C:\Program Files\" is a problem.
>
> Did I miss something on the previous steps ? Is that a known problem ?
>
> --
> Cheers,
> Guillaume Nodet
> ------------------------
> Principal Engineer, IONA
> Blog: http://gnodet.blogspot.com/
>



--
Cheers, Stuart

Reply via email to