We've also done a similar approach to that which Richard describes.

Our web-start just brings down a very thin "launcher" JAR - this goes back to the URL to pull down the felix.propeties, and via "variable substitution" the bundle JARs get pulled down automatically e.g.

felix.auto.install.1="${bundle.root}/lib/ext/osgi.compendium.jar" \

For local use ${bundle.root} has a file:// URL value to load bundles from the local file system - which is set by our command / EXE startup wrappers

For the "shim" launcher for WebStart we make sure this property is set in the JNLP:

  <resources>
     <j2se version="1.4+" href="http://java.sun.com/products/autodl/j2se"/>
     <j2se version="1.4+"/>
     <jar href="lib/launch.jar" main="true" download="eager"/>
     <jar href="lib/felix.jar" download="eager"/>
     <property name="bundle.root" value="$$context"/>
  </resources>

I forget - but I think $$context uses a standard webstart servlet auto replacement - to make the JNLP portable regardless of the mounted URL

-- Rob

Richard S. Hall wrote:
Just a guess...

I assume you have packaged everything into a single JAR file that Web Start downloads, including embedded bundle JARs. Could you simply do a getResource() specifying the path to the embedded bundle JAR and use the returned URL to install the bundle?

-> richard

Sebastian Heib wrote:
Hi,

I have a felix application (sip-communicator) that gets started with
webstart.

In the felix.client.run.properties file I refer to the bundles that
should be loaded at startup. Does anybody know a possibility, how I can
refer to the jars (my bundles) that webstart has downloaded? I tried the
following, but neither of them worked:

jar:file://www.mydomain.com/foo/bar.jar!/ (see
http://docs.sun.com/source/819-0913/author/jar.html#jarprotocol)

jar:http://www.mydomain.com/foo/bar.jar!/ (as documented in the javadoc,
JarURLConnection)


Sebastian



--


Ascert - Taking systems to the Edge
[EMAIL PROTECTED]
+44 (0)20 7488 3470
www.ascert.com

Reply via email to