Jmol Applet Documentation

Table of Contents

1. Introduction
2. Supported Browsers
Testing results
XHTML support
3. Hardware and OS Requirements
4. Web Server configuration for the JmolApplet
5. Jmol Applet Usage

Chapter 1. Introduction

The Jmol Applet allows the 3D display of molecules within a web page.

With the exception of a few wrapper classes, the Jmol Applet code is shared with the Jmol Application.

Chapter 2. Supported Browsers

The applet is tested and working with Internet Explorer, Netscape, Opera, Mozilla (and derivatives) and Konqueror on various platforms. Test results are given below. But be advised that this table (like most documentation) is often out of date.

If you find problems with the browser/operating system/jvm combination of your choice, please send an email to, stating the exact error (most browsers have a Java Console), and the versions of the browser, the operating system, and the java virtual machine that is used.

Testing results

The JmolApplet has been tested successfully with the following system configurations:

  • Win32 (98/ME/2K/XP)

    • Microsoft Internet Explorer with Microsoft JVM

    • Microsoft Internet Explorer with Sun Java Plugin >= 1.4

    • Netscape 4.7/4.8 (slow performance)

    • Netscape 7 with Sun Java Plugin >= 1.4

    • Mozilla with Sun Java Plugin >= 1.4

    • Firefox 1.0 with Sun Java Plugin >= 1.4

    • Opera 7.5.4 with Sun Java Plugin >= 1.4

  • Mac OS X 10.3.3 or greater

    Mac OS X prior to 10.3.3 did not support LiveConnect communications between JavaScript and Java

    • Safari 1.2 (v125)

      Previous versions of OSX & Safari have significant problems. Even subsequent versions have problems. Lets hope that Apple can keep things stable.

    • Netscape 7.2 with installed

    • Mozilla 1.7.3 with installed

    • Firefox 1.0 with installed

    • Opera 7.5.4

      all versions of Opera OSX up through 7.5.4 are completely broken

  • Linux/Unix

    • Mozilla 1.6 + Sun Java >= 1.4

    • Firefox 1.0 + Sun Java >= 1.4

    • Konqueror 3.3

      all versions of Konqueror up through 3.3 are broken

  • Mac OS 9

    • Netscape 4.7* marginal performance with limited functionality

XHTML support

It is possible to use the JmolApplet within an XML/XHTML environment. This is entirely irrelevant for most people's purposes - if you don't know that you need this capability, then you don't.

It requires a browser capable of dealing properly with XHTML documents. At the time of writing, this was limited solely to recent versions of Mozilla-based browsers and of Opera. Note in particular that Internet Explorer will not support this mode of operation within the foreseeable future. It also requires that your documents validate entirely correctly against the appropriate schemata.

In addition, the standard Jmol.js Javascript library will not work under properly compliant XML browsers. An alternative, largely similar, but entirely unsupported library is available ... insert address here ...

That all said, the XHTML features of JmolApplet have been successfully tested on the following OS/browser/JVM combinations.

Chapter 3. Hardware and OS Requirements

We recommend a machine with a 600 Mhz CPU and 256 Mb of RAM. This should cover almost every machine made this century.

If you have older CPU with a newer/upgraded operating system, (like Mac OSX or WinXP) then we strongly recommend that you have at least 256 Mb of RAM ... more is better.

No specialized video hardware is required.

Chapter 4. Web Server configuration for the JmolApplet

The JmolApplet is configured on the web server just like any other Java applet.

The JmolApplet.jar and Jmol.js files are placed in a directory on your web server. We advise placing them in a sibling directory or subdirectory of your .html pages ... something like ../jmol or ./jmol

All the java classes needed by the applet are contained in the single JmolApplet.jar file.

The applet runs as an unsigned/untrusted applet. Therefore, no additional steps are needed for end-user verification of applet authenticity.

Chapter 5. Jmol Applet Usage

Use the Jmol.js JavaScript library as documented in