Can you use webstart as a update system for standard clients? I mean, if the user downloads the install, could I use it to perform updates of the client software at startup…
Kev
Can you use webstart as a update system for standard clients? I mean, if the user downloads the install, could I use it to perform updates of the client software at startup…
Kev
Yep. It will even allow you to do incremental updates, so that you don’t need to download the entire new client if only a few classes have changed.
Thanks, is there an explanation on how to use webstart when its not directly triggered from out of browser somewhere?
Kev
On Windows, just double-click a JNLP file
Not quite what I meant, how can I progmatically start WebStart just before my apps runs to ensure its up to date?
Kev
hmm, java web start will automagically update the client before it’s run if it’s not up to date (or am I missing something?).
Only if you run the client/game from inside the webstart tool.
I want the user to be able to download an install. When they run the client/game from the command line I’d like the first thing it does is to go away and run the web start backend to update the jars before the actual program starts.
I don’t want the user to have to have installed web start. I’d like to package the jars that build up web start as part as my app and have it hidden behind some sort of boot strap.
I know I could write an implementation of web start that worked this way, but I was hoping I could just utilise the web start jars.
Kev
hm…i don’t think that will be possible. webstart applications are placed in the webstart-cache folder.
if you want to use webstart for updating your app, you have to put it into the cache, start webstart, and copy the files back to the folder, where the user installed the game.
t’s webstart OR installer, not both :(.
Sure the fact its in cache is just a parameter that the web start gui passes into the java…
Well, looks like I’m just going to have to write a standalone webstart app thats compatible, was just hoping not to have to…
Cheers all for responses,
Kev
Ahh, now I understand.
The problem is that Sun’s JNLP implementation is tied to WebStart so there’s no way to use the former independent of the latter. That said, there are a number of alternative implementations of JNLP that don’t use WebStart (or any other launcher for that matter) which you can use to programatically manage auto-updates of your app.
One place where this became essential (for me) was when I was doing some work with JXTA in a former life, and needed to automatically update the local instance (jars & native libs) of a remotely defined service. Without getting into too many off-topic details, I couldn’t use WebStart because all this had to happen from within a running JXTA client, for services that also had to run inside that client.
I used OpenJNLP (http://openjnlp.nanode.org) in the JNLPLoader for JXTA and found it worked pretty well. It’s open source, but It hasn’t been updated since last December, so I’m not sure whether there’s any new development happening.
Still, if you can live with launching your app from a .jnlp file, WebStart has much more complete support for JNLP than any other implementation so far.
Hi,
may you can code some kide of pre-client before starting the
“real” client. The pre-client will use the jnlp API to check
for updates. But this will make new problems i think.