I created a simple JavaFX applet and compiled it with "javafxc" and created a jar "HelloApplet.jar". Then, I created a simple HTML file as follows:

When viewing the HTML, I did not see the expected applet content in it - just a gray rectangle panel Then, I turned on the "Show Java Console" option. I saw the following exception trace in Java console:

JNLPAppletLauncher: static initializer Exception in thread "AWT-EventQueue-2" java.lang.NoClassDefFoundError: com/sun/javafx/runtime/FXBase at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java :675) at java.security.SecureClassLoader.defineClass(Secure ClassLoader.java:124) at java.net.URLClassLoader.defineClass(URLClassLoader .java:260) at java.net.URLClassLoader.access$100(URLClassLoader. java:56) at java.net.URLClassLoader$1.run(URLClassLoader.java: 195) [.. more stack frames deleted for brevity ..]
Aha! com.sun.javafx.runtime.FXBase is new since JavaFX 1.2. Yes, I had compiled my applet with JavaFX 1.2 (full version "1.2.0_b233"). So, the JavaFX runtime used turned out to be old one! I changed the HTML script URL from http://dl.javafx.com/dtfx.js to http://dl.javafx.com/1.2/dtfx.js. The applet worked as expected

More...