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