If I interpret the Sun FAQs correctly, Web Start requires only an HTTP server to deliver the required application JAR files and all execution occurs in the JRE on the client side. Is my interpretation correct? Or, is something analogous to a J2EE application server required on the server-side?
There are two typeof server support. The simpler, just need to publish your files on any "static" web server (like those that host freely your HTML pages) and then point your web browser to them. The "dynamic" support is needed when the advanced features of JNLP are needed, like the JARDiff protocol. In this latter case a servlet support on the server side is needed.
Re: "dynamic" support: Would that be, for example, to query a database that sits on the server side? And are saying then that this would require an application server with at least a servlet container? [ April 17, 2002: Message edited by: Jay Damon ] [ April 17, 2002: Message edited by: Jay Damon ]
I think yes.. you would say that. Like, to query client license info and etc etc.. But i wouldn't call it server Requirements. It pretty standard if you are using Java. I might be wrong as i am also pretty new in this area.
JNLP still doesn't provide the ability to query for license keys, at least not explicitly. What it does provide so far is the ability of downloading only the difference of JAR files. Say you have an app that is composed of three JARs: JAR1-3. Then you post on your deploymen server a new version, that solves some bugs and the JAR1 need to be downloaded again with the newer version. If your deployment server can run servlets, you can use a JNLP server implementation that supports the JARDiff protocol. At this point, say that the old JAR1 takes 850KB. The new one (JAR1a) is pretty the same as the old, just 1KB changes (it is actually a patch release). If your server supports JARDiff, then your clients will download only 1KB, not the whole JAR1a anew. This is an example of an "advanced" service offered by a JNLP Server. Anyway, if you don't need such a feature, you can happily use a static web server, as discussed in my book or in any JNLP documentation. Cheers, Mauro