Posted by tomkoch
on April 19, 2007 at 7:12 AM PDT
we currently face problems when using JavaHelp (2.0) in a Webstart enabled application. Following several postings from the JavaHelp mailing list we 1st managed to include all help resources (helpset, html, toc etc.) in a signed jar that was deplyoed via webstarts jnlp. However with this approach we observed that when users select a link in a help page actually each time the whole JAR was re-loaded (via HTTP) from the web-server!
So next approach was to include all single JAR with all help resources in one of the applications JAR files and then to extract this to the local file system (when the app launches). JavaHelp then accesses the local JAR via file:/-URL.
Problem now is that for some reason the navigator view remains empty, i.e. only the content view is shown. No exception is thrown or anything else. When running the app 'standalone' (in Eclipse/JRE) everything works fine.
We're using code from the JHLauncher (from JavaHelp demo) and are testing with demo help-JARs (just to make sure it is not related to our helpset). While debugging we found following difference:
1) Code run locally in Eclipse/JRE:
2) Code run in Webstart application:
(call to helpBroker.getCurrentView actually leads a NullpointerException here)
So the local help jar is located and loaded via URLClassLoader. Helpset and HelpBroker are created. However the NavigatorView array is empty (helpset.getNavigatorViews()).
Has anyone faced similar problems when trying to deplay JavaHelp resources with Webstart and know a good solution? Any hint is welcome...Thanks in advance!
OrbiTeam Software GmbH & Co. KG