The new JNLPAppletLauncher supports deployment of high-end applets using arbitrary extensions such as JOGL for 3D graphics and JOAL for spatialized audio. The user's applet does not have to be signed, and no manual installation of software on the user's machine is necessary. Combined JOGL and JOAL applets are supported by the JNLPAppletLauncher on all OS and CPU combinations where these libraries are supported: currently Windows/x86, Linux/x86, and Mac OS X, both PowerPC and Intel.

Here is a simple example of an applet which combines both OpenGL rendering and OpenAL audio:

Sorry, no Java support detected.

The applet above is instantiated with the following code:

<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
      width="600" height="400">
   <param name="code" value="org.jdesktop.applet.util.JNLPAppletLauncher">
   <param name="archive" value="../jar/applet-launcher.jar,
                                ../jar/gluegen-rt.jar,
                                ../jar/jogl-all.jar,
                                ../jar/joal.jar,
                                jar/jogl-demos.jar">
   <param name="codebase_lookup" value="false">
   <param name="subapplet.classname" value="demos.applets.GearsJOALApplet">
   <param name="subapplet.displayname" value="JOGL / JOAL Gears Applet">
   <param name="noddraw.check" value="true">
   <param name="progressbar" value="true">
   <param name="jnlpNumExtensions" value="2">
   <param name="jnlpExtension1" value="../jogl-all-awt.jnlp">
   <param name="jnlpExtension2" value="../joal.jnlp">
   <param name="java_arguments" value="-Dsun.java2d.noddraw=true">
   <comment>
     <embed code="org.jdesktop.applet.util.JNLPAppletLauncher"
          width="600" height="400"
          type="application/x-java-applet;version=1.6"
          pluginspage="http://java.sun.com/javase/downloads/ea.jsp"
          archive="../jar/applet-launcher.jar,
                   ../jar/gluegen-rt.jar,
                   ../jar/jogl-all.jar,
                   ../jar/joal.jar,
                   jar/jogl-demos.jar"
          codebase_lookup="false"
          subapplet.classname="demos.applets.GearsJOALApplet"
          subapplet.displayname" value="JOGL / JOAL Gears Applet"
          noddraw.check" value="true"
          progressbar="true"
          jnlpNumExtensions="2"
          jnlpExtension1="../jogl-all-awt.jnlp"
          jnlpExtension2="../joal.jnlp"
          java_arguments="-Dsun.java2d.noddraw=true">
        <noembed>Sorry, no Java support detected.</noembed>
     </embed>
   </comment>
</object>

Note that the jogl-demos.jar and joal-demos.jar files, which contain the applet's classes, do not need to be signed! JogAmp Community signs applet-launcher.jar, jogl.jar, joal.jar and gluegen-rt.jar, which contain the JNLPAppletLauncher, JOGL, JOAL and supporting classes; this is the only Java code which needs to be signed in order to deploy applets using JOGL and JOAL and is the only certificate the end user must accept.

The JNLPAppletLauncher home page contains more information about what files must be placed on the web server in order to enable the deployment of applets using JOGL and other extensions.