Known and Resolved Issues
This chapter lists high visibility bugs that have been addressed in this release. It is not a complete listing of all of the bugs addressed. If you still have issues with any of these bugs, please file a new bug at http://bugreport.apple.com/ under the Java (new bugs)
component, version X
. Refer to the bug number indicated below in your new bug if you believe it is the same issue.
Activity Monitor
Radar #5782402
Java applications show up as (null) in Activity Monitor
Description:
Bundled java applications running in a 64-bit JVM show up as "(null)" in Activity Monitor.
Workaround:
Use the command line "ps" utility to see the full name of the application.
Java Application Support
Radar #4561714
Bundled applications cannot display a Java 6 splash screen
Description:
New in Java 6 is the ability to display a splash screen when your application starts. From the command line, this is done with the '-splash:<path>' argument. No such equivalent existed for bundled applications.
Resolution:
Fixed. Bundled applications can now display a splash file by adding the key 'SplashFile' with the path to the image file as the corresponding value to your bundled application's Java dictionary. This feature only applies to applications running in Java 6.
Radar #5150621
Can't select Java SE 6 in Java Preferences.app
Description:
Java SE 6 is not visible in the Java Application Runtime Settings list in Java Preferences.app.
Resolution:
Fixed. Java 6 can now be selected as your primary Java VM for use on the command line and for Java applications and Web Start applications that request "1.4+" or "1.5+" as their VM version.
Radar #5422774
Running Java applications in 64-bit mode.
Description:
Java 1.5 on OS X v10.5 will run in 64-bit mode, but the command line 'java' will use the 32-bit Java VM by default.
Resolution:
To specify the architecture you want, use '-d32' or '-d64' to indicate which Intel architecture you want to use. If the specified architecture is not supported the default architecture will still be used.
Java 6 handles both -d32/-d64 on the command line, but always runs in 64-bit mode. J2SE 1.4 does not handle - d32/-d64 on the command line (identifies them as unrecognized options that cause the JVM not to be started).
Radar #5753008
Prioritizing the J2SE 5.0 (64-bit) JVM actually selects the 32-bit J2SE 5.0 JVM.
Description:
The 32-bit J2SE 5.0 JVM is actually selected and used by some Java and Web Start applications when J2SE 5.0 (64-bit) has the highest priority in Java Preferences' Java Application Runtime Settings.
Radar #5787297
Preferred Java VMs are reset after installing Java for OS X v10.5 Update 1.
Description:
The preferred order of Java VMs for launching Java applications is reset after installing Java for OS X v10.5 Update 1. This information is now also stored in ~/Library/Preferences.
Workaround:
Open /Applications/Utilities/Java/Java Preferences.app, change the preferred VM's, and click "Save".
Java Aqua LAF
Radar #4777837
JTabbedPanes throw ArrayIndexOutOfBoundsException when calling removeAll()
Description:
JTabbedPanes with enough tabs to scroll between them could sometimes throw an ArrayIndexOutOfBoundsException originating from the Aqua Look and Feel if remove() or removeAll() was called on the component.
Resolution:
This issue has been addressed.
Radar #5445548
JOptionPane dialogs in Web Start Applications use the generic Java application icon if not launched from a bundled application.
Description:
JOptionPanes use the icon of the application to show which application the modal dialog belongs to. Java Web Start applications launched directly from a JNLP file would not show their icon as specified in the JNLP until they were saved as a bundled application, and relaunched.
Resolution:
JOptionPanes now obtain the application icon directly from the Dock tile of the application.
Radar #5599191
"JComboBox.isPopDown" and "JComboBox.isSquare" don't repaint the component when changed.
Description:
The extended JComboBox client properties described in Technical Note 2196 did not update the visual appearance of the JComboBox until some external event triggered a repaint.
Resolution:
Changing the JComboBox client properties now requests a repaint() and updates the JComboBox immediately.
Radar #5600749
Client properties ignored if set too early
Description:
If client properties were set while a non-Aqua look and feel was active, they were ignored when switching to the Aqua Look and Feel.
Resolution:
Fixed. Client properties are now correctly processed when the Aqua Look and Feel is installed.
Radar #5601325
Up/Down arrow keys should jump to the beginning or end of line
Description:
Multiline JTextComponents don't move the insertion caret to the beginning of the first line when the up-key is pressed and the insertion point is already in the middle of the first line of text. Same problem with down-key pressed and the last line.
Resolution:
The insertion caret now jumps to the beginning or end of line using the up/down arrow keys, as per the standard multi-line text field behavior in OS X.
Radar #5618485
The client property to specify a descending sort order for a JTable column is misspelled.
Description:
The descending value for the "JTableHeader.sortDirection" client property key was mistakenly misspelled "decending".
Resolution:
Accepted values of "JTableHeader.sortDirection" are now { "ascending", "decending", "descending", null }.
Radar #5683832
No way to obtain a title-less OS X style group border
Description:
OS X style titled borders can be obtained using UIManager.getBorder("TitledBorder.aquaVariant"), however there was no way to obtain an OS X style title-less border.
Resolution:
Title-less OS X style group borders can now be obtained with UIManager.getBorder("InsetBorder.aquaVariant").
Radar #5686535
There is no way to access the color of the focus ring from Java
Description:
While the light and dark selection colors are available from the UIManager, there is no way to obtain the color of the focus ring from a Java application.
Resolution:
The focus ring color can now be obtained using UIManager.getColor("Focus.color").
Radar #5693868
The vertical alignment of icons positioned in square-style JButtons is 2 pixels too high
Description:
JButtons set to the square style, or resized vertically to become compressed into the square style did not adjust the vertical alignment of their icons to compensate, and was 2 pixels too high.
Resolution:
JButtons icons now are center aligned in all button styles.
Radar #5696011
Bevel-style JButtons could overflow their visual bounds
Description:
JButtons with non-center alignment could place their text and icon content on top of the visual border of the button.
Resolution:
All button styles (particularly bevel), now compensate for their visual margin when laying out their internal content. Edge-aligned content should now rest against the edge, and not paint on top of it.
Java AWT
Radar #5493967
GraphicsEnvironment.getScreenDevices() returns inaccurate information
Description:
The GraphicsDevice and GraphicsConfiguration returned inaccurate or incomplete information for available accelereated memory and physical screen size.
Resolution:
GraphicsDevice.getAvailableAcceleratedMemory() now returns the available texture memory on the specified display device's graphics card, if available. GraphicsConfiguration.getNormalizingTransform() now returns a non-identity transform that represents the scaling proportion between the real physical size of the attached display and the virtual coordinate space of the Java application.
Radar #5512101
Java applications launched from the command line show 'bin' as their name in the Dock.
Description:
Some Java command-line tools displayed 'bin' as the name of the application in the Dock.
Resolution:
Fixed. The Dock now shows the correct application name for Java applications and Java command-line tools.
Radar #5600385
Java application windows don't work with Spaces
Description:
Switching between spaces and using Command-Tab to return to a Java application, did not switch back to the Java application's space. Menus appeared, but no windows were visible.
Resolution:
Fixed. Java SE 6 windows now correctly interact with Spaces.
Radar #5664937
Copying and pasting images to and from Java fails
Description:
Copy and paste operations on image types from Java applications fail with a native exception logged to the console.
Resolution:
This issue has been resolved.
Radar #5674015
OS X does not have the concept of a "System Tray"
Description:
Java applications using the SystemTray API in Java SE 6 need a visual representation on OS X.
Resolution:
TrayIcons are represented on OS X using NSStatusMenus that are presented to the left of the standard system menu extras. The java.awt.Image artwork for a TrayIcon is presented in grayscale as per the OS X standard for menu extras. TrayIcon.displayMessage() presents a small non-modal dialog positioned under the TrayIcon. The ActionListener for the TrayIcon is only fired if the "OK" button on the non-modal dialog is pressed, and not if the window is closed using the window close button. Multiple calls to TrayIcon.displayMessage() will dismiss prior messages and leave only the last message. If the application is not in the foreground when TrayIcon.displayMessage() is called, the application bounces its icon in the Dock. Message windows are badged with the application's icon to identify the which application triggered the notification.
Radar #5686843
The system property awt.multiClickInterval returns null.
Description:
System.getProperty("awt.multiClickInterval") always returned null.
Resolution:
Java now returns an integer representing the number of milliseconds of the double-click delay time based on the user's setting for "Double-Click Speed" in the Keyboard & Mouse preference panel.
Radar #5754483
Command-line Java apps cannot run graphically without a Dock icon
Description:
Java applications started from a command line could not be started in UIElement mode.
Resolution:
Set the Java system property "apple.awt.UIElement" to "true" to start your command-line application in UIElement mode. This suppresses creation of a Dock icon and menu bar, and is only appropriate for modeless transient utility applications.
Radar #5762408
Swing JTextComponents do not interact with the OS X Services menu
Description:
It is not possible to perform operations from the Services menu on lightweight text components.
Resolution:
All Java-accessible text components that support the concept of selection now interact with the OS X Services menu under the application menu, including JTextComponents. Services can now request the current selection, and replace the current selection.
Java Classes
Radar #4743709
AppleScript should be available as a language to the javax.script API
Description:
AppleScript should be provided as a ScriptEngine to the javax.script API in Java SE 6.
Resolution:
AppleScript has been provided as an available language to the javax.script API. It supports passing basic Java objects and collections into AppleScript functions, and receiving Java objects as return values from AppleScript scripts. Currently supported types include strings, numbers, images, lists, sets, and maps/records. The AppleScriptEngine cannot be instantiated in applications that do not have privileges to perform Runtime.exec() operations.
Java HotSpot
Radar #4643752
Java process instrumentation tools don't work
Description:
Java process instrumentation tools like jinfo, jmap, and jstat, don't work without escalated privileges.
Workaround:
Use the associated tools with the 'sudo' command.
Java JavaLib
Radar #5569300
Thread.getContextClassLoader() returns null with -XstartOnFirstThread
Description:
Thread.getContextClassLoader() will return null if the application is run from Eclipse, or with -XstartOnFirstThread specified on the command line.
Resolution:
Thread.getContextClassLoader() now returns the correct class loader for the current thread whether the application was started with -XstartOnFirstThread or not.
Java JDK
Radar #5655357
Passing -client to the Java Virtual Machine does not enable the Client HotSpot compiler
Description:
The Client HotSpot VM compiler is not available for the 64-bit Java SE 6 for OS X.
Java Networking
Radar #4623491
No IPv6 addresses returned for the local machine
Description:
Calling InetAddress.getAllByName() with the local machine hostname as the argument would return only IPv4 addresses. It would not return any IPv6 addresses bound to the host.
Resolution:
This problem has been addressed. The method now returns both IPv4 and IPv6 addresses.
Java Sound
Radar #5616768
javax.sound.sampled.spi.MixerProvider has incorrect information
Description:
The file javax.sound.sampled.spi.MixerProvider referred to audio providers not available on OS X.
Resolution:
Fixed. Non-functional providers are no longer offered.
Java Swing
Radar #4877367
In-window menu bars do not show OS X menu shortcut symbols
Description:
JMenus inside of JFrames show menu shortcuts as "Meta" and "Alt" instead of using the "Command" or "Option" symbol.
Resolution:
KeyEvent.getKeyModifiersText() and KeyEvent.getKeyText() now return the unicode symbols as presented in the screen menu bar on OS X (Command, Option, Control, Shift, Numeric Keypad, etc).
Java Text
Radar #5599927
Text rendered using the Quartz pipeline (including printing) is distorted
Description:
Text rendered using the Quartz graphics pipeline (including all printing) did not apply the font face or metrics appropriately for scaled graphics contexts, resulting in irregularly spaced and untransformed characters.
Resolution:
This issue has been resolved.
Java Toolkit
Radar #5420927
There is no way to set a custom Dock icon or menu from Java.
Description:
There has been no way to set a custom Dock icon, set a Dock icon badge, or add a custom popup menu to a Java application's Dock icon.
Resolution:
New API has been added to the com.apple.eawt.Application object to support setting and getting the Dock icon image, setting a custom red badge on the icon (like Mail's unread count), and setting and getting a custom popup menu that is prepended to the standard Dock menu items.
Radar #5680303
Can't reference a Java application's bundle from Java.
Description:
Currently, Java applications need native code to get the path to their application bundle.
Resolution:
com.apple.eio.FileManager.getPathToApplicationBundle() now returns the full path to the application. This is the equivalent of calling "[[NSBundle mainBundle] bundlePath]" from Objective-C.
Java Web Start
Radar #3834108
Web Start applications don't display splash screens
Description:
Web Start ignored the request for a splash screen when an icon kind of 'splash' was specified in the JNLP file.
Resolution:
Fixed. Web Start now displays any requested splash screen for any version of Java.
Shark
Radar #4989222
Can't profile Java SE 6 applications with Shark
Description:
Java SE 6 applications cannot be profiled with Shark. This is because libShark.jnilib is 32-bit only.
Workaround:
None available at this time.
Copyright © 2008 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2008-05-02