Eclipse RCP Splash Screens and Java WebStart

One thing that has bothered me (and recently one of my customers) a lot was that we could not display Eclipse RCP splash screens when starting the application using Java WebStart. But now I got it working, here is the recipe:

1) In your main jnlp file, add

<application-desc main-class="org.eclipse.equinox.launcher.WebStartMain">
    <argument>-showsplash</argument>
</application-desc>

2) In the resources section, add the following 4 properties.

<property name="osgi.instance.area" value="@user.home/<your_app>"/>
<property name="osgi.install.area" value="@user.home/<your_app>/osgi"/>
<property name="osgi.configuration.area" value="@user.home/<your_app>"/>
<property name="osgi.splashPath" value="platform:/base/plugins/<your_bundle_that_contains_splash.bmp>"/>

3) For all operating systems that might wanna run your webstarted app, add the launcher respective fragments, e.g. for Win and Win64:

<resources os="Windows" arch="x86">
    <jar href="plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20110502.jar"/>
</resources>
<resources os="Windows" arch="x86_64">
    <jar href="plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.100.v20110502.jar"/>
</resources>

That should be it. I have already added the Windows fragments for my MP3 Manager Demo, so when you start it under Windows, you should see the RCP splash screen.  I will add the remaining fragments for other operating systems later…

You can WebStart MP3 Manager here:

Have Fun!

Kai

You find me on Twitter and Google+.
If you are interested in in-house Eclipse RCP training,
please contact me…

This Post Has 3 Comments

  1. Jan

    Kai,

    nice trick – splash screens are catchy and important for first tool impression.
    Btw. I tried the demo app and imported a single album folder – and got 99999 entries in the virtual table view (tracks do repeat over and over again)

    Anyway, thanks for the post
    Jan

  2. Kai Tödter

    Jan,

    >I tried the demo app and imported a single album folder –
    >and got 99999 entries in the virtual table view (tracks do repeat over and over again)
    yes, I implemented it that way to make sure that a virtual table makes sense -> I wanted to have 100000 entries regardless how many real entries you have 🙂

  3. Aaron

    This does not work in Eclipse 3.7.1 (Windows XP). According to Eclipse Bug 349843 (https://bugs.eclipse.org/bugs/show_bug.cgi?id=349834) “@user.home” is not resolved correctly when used in the “osgi.install.area” property. Can this still be done in Eclipse 3.7 using some other work around?

Leave a Reply to Kai Tödter Cancel reply

I accept the Privacy Policy