The new plug-in requires the AWT XToolkit, which was introduced in JDK
5, to be used on X11 platforms. On Linux in JDK 5, the XToolkit was
made the default toolkit. However, on Solaris in JDK 5, for
"compatibility" reasons, the MToolkit was left the default. The
XToolkit became the default on Solaris platforms in JDK 6. In order to
make the new plug-in's multiple JRE capability work with JDK 5 on
Solaris, -Dawt.toolkit=sun.awt.X11.XToolkit must be specified on the
command line of the launched subordinate JVM.
Additionally, JREs before version 5, which don't work at all with the
new plug-in since the XToolkit doesn't exist, are now filtered out of
the available set on Unix/X11 platforms. JREs before version 1.4 are
filtered out on all platforms, since the new plug-in by design
The regression test for this bug uncovered a deeper robustness issue
where this failure mode would hang the browser if a LiveConnect call
was made against the applet for which we failed to create an
EmbeddedFrame. Added notification of this error down the stack to the
Applet2Manager and LiveConnectSupport classes on the client side.
Additional testing with 1.4.2 uncovered another problem where the
usage of System.getenv() for debugging purposes was preventing the new
plug-in from launching at all on that family, since System.getenv()
was deliberately broken in an early JRE release (my personal
experience was that this occurred in 1.2, but I can't confirm this
from our sources) and only re-enabled in JRE 5. A separate bug,
6635826, has been filed to track this problem.