Jump to content

Java Web Start

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 212.179.92.170 (talk) at 12:12, 26 October 2008 (Added external links to other JNLP implementations). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Java Web Start, introduced in Java 2, allows provisioning applications over the Web by clicking a desktop icon or a link on a website.

Java Web Start is a framework developed by Sun Microsystems which allows application software for the Java Platform to be started directly from the Internet using a web browser. Unlike Java applets, Web Start applications do not run inside the browser, and the sandbox in which they run does not have to be as restricted, although this can be configured. One chief advantage of Web Start over applets is that they overcome many compatibility problems with browsers' Java plugins and different JVM versions. On the other hand, Web Start programs cannot communicate with the browser as easily as applets. To assist migration, a Java Applet can also be used as a Java Web Start application.

Web Start also provides a series of classes in the javax.jnlp package which provide various services to the application. Most of these services are designed around the idea of allowing carefully controlled access to resources (such as files and the system clipboard) while restricting the application to authorized operations.

Version 1.0 of Web Start was introduced by Sun in March 2001.[1] Since J2SE version 1.4 it has been included by default with the Java Runtime Environment (JRE) and does not have to be installed separately. Java Web Start is similar to ClickOnce in the .NET framework.

Java Network Launching Protocol

Java Network Launching Protocol (JNLP) is a closely-related concept that is often used interchangeably with the term "Web Start." It is the protocol, defined with an XML schema, that specifies how Java Web Start applications are launched. JNLP consists of a set of rules defining how exactly this launching mechanism should be implemented. JNLP files include information such as the location of the jar package file and the name of the main class for the application, in addition to any other parameters for the program. With a properly configured browser, JNLP files are passed to a Java Runtime Environment which in turn downloads the application onto the user's machine and starts executing it. JNLP was developed under the Java Community Process as JSR 56, which includes the original 1.0 release, the subsequent 1.5 maintenance release, and as of 2006, the pending 6.0 maintenance release. JNLP is free; developers are not required to pay a license fee in order to use it in programs.

Important Web Start features include the ability to automatically download and install a JRE in the case where the user does not have Java installed, and for programmers to specify which JRE version is needed to run a given program. The user does not have to remain connected to the Internet to execute the downloaded programs, because they execute from a locally-maintained cache. Finally, automatic updates of the software from the Web are available when the user is connected to the Internet, thus easing the burden of deployment.

Anyone can reap the benefits provided by JNLP by simply installing a JNLP Client (most commonly Java Web Start). This Client Installation can be made automatic, so that the end users can see the client launcher automatically downloaded and installed before the Java application the first time they launch the latter.

JNLP works on a classic Client-Server scheme. The JNLP Client reads and executes the JNLP File (that is the XML file) eventually contacting a JNLP Server or some web server for help. The JNLP Client runs locally on the client system whereas the server is implemented by some servlet and is used only for some advanced features of the protocol.

Signed WebStart applications

By default java webstart applications are restricted, which means that they do not have access to some system resources such as local files. But you can remove these restrictions by signing your webstart applications with the jarsigner tool that comes with the JDK.

Well-known applications

See also

References