IE9 Error When Pasting from ChemDraw to ChemWriter - and a Fix

Recently, a ChemWriter customer described an issue in which Internet Explorer would randomly report a browser crash when attempting to use the Copy from ChemDraw functionality. This article describes the technical solution to the problem, which is available in ChemWriter Releases 2.14.6 and higher.

Symptoms

On IE9 with a Java Plugin older than Version 7, the following dialog appears, stating "Internet Explorer has stopped working Windows is checking for a solution to the problem...":

If the system is allowed to run unattended, this dialog is often followed by another stating "A problem caused the program to stop working correctly. Windows will close the program and notify you if a solution is available.":

It may or may not be possible to continue. Occasionally, IE notifies that the browser tab can not be recovered.

Neither the JavaScript nor Java consoles contain output indicative of an exception or error condition.

This issue does not affect legacy IE versions (i.e.: IE6; IE7; or IE8), nor does this issue affect users who do not attempt to paste structures from ChemDraw through the system clipboard.

Causes

For those unfamiliar with the changes in the browser landscape over the last year - Internet Explorer 9 (IE9) is a very different beast from its predecessors. Whereas previous versions insisted on idiosyncratic behavior, IE9 reflects Microsoft's growing realization that Web developers follow the lead of W3C, not Redmond.

Although this change has been welcomed by Web developers everywhere, this new version of IE9 simply doesn't work the way the old IEs worked.

The differences are amply apparent in the problems many users are now reporting using older versions of the Java Plugin with IE9 (for example: link and link). Unfortunately, from many of the reports both the cause and solution to this issue remain unclear.

Workaround

There were enough clues pointing to the combination of IE9 and Java 6 plugins (and possibly all previous Java versions) as being responsible for the reported system crashes.

My test environment showing the crash behavior was a Windows Vista 32-bit system running Internet Explorer 9 with Java Plugin 6u26, a Java 6 update that had been reported as a fix.

Upgrading to Java Plugin7u4 (the most recent version available at the time of writing) resolved the issue completely.

Caveat

There is one additional problem in deploying Java applets on IE9 - the 'old' way no longer works the same. Specifically, previous applet deployments from ChemWriter had used Microsoft's idiosyncratic <object> tag using the classid attribute to specify a minimum java version.

IE9 now treats classid as the version of Java that must be present and prompts the user to install an older version, even if a newer one is present. Fortunately, IE9 now supports the use of the same <object> tag markup as all other browsers. Using this method eliminated the problem.

As a result, enabling ChemWriter to work with Java Plugin 7 on IE9 will require an update to ChemWriter 1.14.6.

Testing

To easily test the new release of ChemWriter and its paste from ChemDraw functionality on your hardware/OS/Plugin combination, visit the ChemWriter homepage.

Conclusions

Interoperability between IE9 and older versions of the Java Plugin has been apparently broken, resulting in a mysterious "Internet Explorer has stopped working" error. This problem disappears with Version 7u4 of the Java Plugin. ChemWriter versions 12.14.6 and higher enable users to paste structures from ChemDraw on IE9 without receiving the error.