This chapter provides a listing of bugs that you may need to work around in your Java 1.4.2 code for Mac OS X. Where possible, workarounds are provided.
Java Application Support
Java AWT
Java Graphics
Java HotSpot
Java Security
Java Swing
Java Text
Older versions of JBuilder may not work with Java 1.4.2.
Versions of JBuilder earlier than JBuilder X may not launch with Java 1.4.2 installed.
There is no known workaround other than upgrading to JBuilder X. You might also want to contact Borland technical support.
Some Java applications that ran in Java 1.4.1 no longer run in Java 1.4.2.
If Java3D or JavaAI has been installed after installing Java 1.4.2 was installed, it's possible that certain applications double-clickable Java applications will not launch. The console may display java.lang.UnsupportedClassVersionError. Applications that will not run are those that explicitly specify Java 1.4.1 in the Info.plist file.
A user can simply reinstall Java 1.4.2. As a developer, you should make sure that the info.plist entry for JavaVM does not explicitly specify Java1.4.1. If so, change the setting to something safer like Java1.4.1+ or Java1.4*.
Memory leak when creating and disposing java.awt.Windows
If you create new window objects then dispose of them, over time memory allocations increase.
There is currently none.
Apparent random crashes in heavily multi-threaded Java applications.
Some multi-threaded applications that use Java2D can crash with a crash log that specifies a failure in Java_apple_awt_CRenderer_doFillRect.
Currently there is none.
Rare deadlocks in mutlithreaded draw.
In certain situations, multithreaded applications that hold onto a graphics object before passing it to a different thread and then try to draw back into a AWT component will deadlock.
InvokeLater with the windows graphics object, which puts you on the AWT thread.
Problems with full screen mode.
Full screen mode has various problems in this release. For example, sometimes it will not initialize and when initialized it does not accept mouse events.
There are no, known workarounds.
Problems with XOR mode.
Using setXORMode does not always work correctly and you may see artifacts along the edges of shapes.
There are still outstanding issues with XOR mode in Java 1.4.2, but many issues can be resolved by using setComposite(AlphaComposite.Xor) where you might normally use setXORMode(color).
Problems using -Xrunhprof in Java Plug-in Control Panel.
Trying to use -Xrunhprof within the Advanced > Java Runtime Parameters field of Java 1.4.1 Plugin Settings results in only minimal usable data. A small amount of usable data is shown, then repeated messages of, “thread_suspend failed.”
There is no complete workaround, but -Xprof might give some useful results.
jvmstat tools do not work.
The jvmstat 2.0 tools available from http://developers.sun.com/dev/coolstuff/jvmstat do not work with Java 1.4.2 in Mac OS X.
None.
Java Kerberos does not work well with the default Mac OS X Kerberos implementation.
There are known issues with the interaction of Java and the operating system when dealing with Kerberos authentication. The Java environment is unable to correctly locate the credentials cache or tickets on the system.
None.
JMenu.getLocationOnScreen reports incorrect value for screen menu bar.
When the menu bar is set to be at the top of the screen apple.laf.useScreenMenuBar, getLocationOnScreen returns the location of JMenu components as if they were not in the menu bar.
None.
Font style changes to Italic and Italic & Bold do not work for Dialog and Serif mode.
Microsoft Office installs fonts into the Library/fonts/
folder in the user's home directory. Once installed, these fonts are used by Java applications instead of those installed with the system which may cause problems. The installed fonts include:
Wingdings
Verdana
Times New Roman
Tahoma
Monotype Sorts
Lucida Handwriting
Copperplate Gothic Light
Copperplate Gothic Bold
Impact
Edwardian Script ITC
Curlz MT
Century Gothic
Arial
Comic Sans MS
Arial Black
Remove the fonts installed by Microsoft Office that are causing problems.
Double-byte characters are not displayed correctly during input.
Double-byte characters don't display correctly when typed; instead they are shown as rectangles. This happens when the default Roman script system is the active script. This only happens while typing, once the character is committed, it appears correctly.
None.
© 2004 Apple Computer, Inc. All Rights Reserved. (Last updated: 2004-08-11)