Known and Resolved Issues
This chapter lists high visibility bugs that have been addressed in these releases. 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.
Java Accessibility
Radar #7248013
VoiceOver does not speak characters as they are typed in JTextComponents.
Description:
The Java accessibility system was not sending the appropriate notifications to the native OS X accessibility system when text changes were made to Swing JTextComponents.
Resolution:
This issue has been resolved.
Radar #7498168
Transferring focus between JTextComponents throws an InvocationTargetException when VoiceOver is running.
Description:
In some circumstances, JTextComponent accessibility could throw an InvocationTargetException.
Resolution:
This issue has been resolved.
Radar #7498175
Java accessibility fails to report required attributes to native AX system.
Description:
Running the Accessibility Verifier application against a Java application would frequently report missing AXDescription and AXTitleUIElement information.
Resolution:
This issue has been resolved.
Radar #7498226
JProgressBar progress notification not sent to VoiceOver.
Description:
Changes to JProgressBars are not conveyed to the native AX system, and in turn are not heard in VoiceOver.
Resolution:
This issue has been resolved.
Java Applets
Radar #6774655
Applet lifecycle errors could crash browser.
Description:
Internal applet lifecycle inconsistencies could result in Objective-C exceptions bring thrown into the browser, usually resulting in a crash.
Resolution:
The exception throwing issue has been resolved. Remaining applet lifecycle issues will be logged, and should be reported as separate bugs.
Radar #7387825
Loading non-existent applet can hang browser.
Description:
Loading an applet that does not actually exist can hang the browser in a deadlock from the greybox painter.
Resolution:
This issue has been resolved.
Radar #7466414
Loading signed code authorization dialog can fail loading native library.
Description:
A race condition in the underlying authorization dialog initialization could cause the dialog to fail to initialize and display. Refreshing the page causes the dialog to be shown correctly.
Resolution:
This issue has been resolved.
Radar #7678257
The J2SE 5.0 in-process plug-in is no longer used for Safari.
Description:
The in-process plug-in for J2SE 5.0 on OS X v10.5 is no longer maintained, and is no longer used in Safari by default. The Java SE 6-based plugin in the Deploy.bundle is used instead, even though it is hosted on the J2SE 5.0 JVM. The 1.5 plugin is now only present for backwards compatibility with browsers that use the Java Embedding Plugin (Firefox, Camino, etc).
Radar #7769782
Invalid parameters in Java Preferences causes browser crash.
Description:
If the Applet Runtime Parameters in Java Preferences cause the JVM to fail to initialize, it would cause the hosting browser process to crash when loading an applet.
Resolution:
This issue has been resolved. When the JVM fails to initialize, a coffee cup with a red exclamation point will display instead of the applet content.
Java Application Support
Radar #7673722
/usr/libexec/java_home
is difficult to use from launchd plists without an additional shell script.
Description:
/usr/libexec/java_home
is designed to provide a replacement for full hardcoded paths to a $JAVA_HOME
, however it's not possible to use the returned value without executing a shell.
Resolution:
An --exec
argument was added to /usr/libexec/java_home
. This argument takes a single "command" argument and passes any remaining arguments to an invocation of $JAVA_HOME/bin/<command> <args...>
.
Radar #7820158
/usr/libexec/java_home
doesn't show an installed JVM's name in --verbose
mode.
Description:
/usr/libexec/java_home --verbose
prints only the version, architecture, and path. Without the CFBundleIdentifier of the JVM, it's difficult to discriminate between multiple JVMs of the same version.
Resolution:
/usr/libexec/java_home --verbose
now prints the installed JVM's bundle name.
Java Aqua LAF
Radar #7380963
JComboBox commits highlighted item if mouse-up is outside of pop-up bounds.
Description:
The selected item in a popup menu of a JComboBox would incorrectly commit under the following circumstances: mouse-down and up on a JComboBox, mouse-down over a menu item, drag out of the popup, and mouse-up outside of the popup.
Resolution:
This issue has been resolved.
Radar #7404118
JToolBar+JToggleButton: text disappears when selected.
Description:
JToggleButtons placed in JToolBars fail to paint their label text when selected.
Resolution:
This issue has been resolved.
Radar #7584031
Aqua JDesktopPane holds last frame, prevents garbage collection.
Description:
The Aqua JDesktopPane implementation holds onto the last shown JInternalFrame after it has been removed from the pane, which prevents the frame from being garbage collected.
Resolution:
This issue has been resolved.
Radar #7592927
JSpinner: missing keybindings.
Description:
Several keybindings (enter, up/down arrow) are incorrectly configured for JSpinners and JFormattedTextFields.
Resolution:
This issue has been resolved.
Java AWT
Radar #7017519
Applet AWT controls do not receive focus/keystrokes on window activation.
Description:
AWT controls in applets sometimes do not receive focus when the browser window becomes active/inactive. This can prevent key strokes from being delivered, even though the component looks like it's focused.
Resolution:
This issue has been resolved.
Radar #7067726
AWT TextFields and TextAreas do not accept complex text input.
Description:
On OS X v10.6, AWT TextFields and TextAreas fail to receive multi-keystroke input method events.
Resolution:
This issue has been resolved.
Radar #7270562
Changing a window to non-resizable does not remove resize indicator.
Description:
In some circumstances, changing a window from resizable to non-resizable would not remove the resize indicator from the window.
Resolution:
This issue has been addressed.
Radar #7463749
Document modal sheets fail to modally block their parent window.
Description:
Document modal sheets fail to block key focus from being transferred into their parent window. While clicks are blocked, keyboard navigation is still possible in the parent window.
Resolution:
This issue has been resolved.
Radar #7551587
Dialogs marked DOCUMENT_MODAL fail to activate app.
Description:
Dialogs marked as DOCUMENT_MODAL against their parent cause a failure to activate their application when clicked on.
Resolution:
This issue has been resolved.
Radar #7593682
Cursor coordinates not translated when User Interface Scale Factor is greater than 1.0
Description:
The AWT MouseInfo failed to properly translate the cursor's coordinates into the Java 72-point coordinate space when the system is running in HiDPI (User Interface Scale Factor in Quartz Debug set greater than 1.0). This could cause Java Preferences fail to launch, depending on the mouse location.
Resolution:
This issue has been resolved.
Radar #7722807
Applet signed code authorization dialog makes "About" menu disappear from browsers.
Description:
Signed applets that trigger the signed code authorization dialog had the side effect of replacing the browser's NSApplication delegate, which would result in them losing their "About" menus (among other issues).
Resolution:
This issue has been resolved.
Radar #7733306
Navigating an AWT FileDialog into a network server automatically mounts all available shares.
Description:
On OS X v10.6 only, navigating an AWT FileDialog into a network server would mount all available shares on the server, without user intervention.
Resolution:
This issue has been resolved.
Java Core Frameworks
Radar #7754383
Threads attached via JNFObtainEnv()
are always attached as non-daemon.
Description:
If a native thread is attached to the JVM with JNFObtainEnv
, there is no way to specify if it should be attached as a normal thread or as a daemon.
Resolution:
A JNFThreadAttachAsDaemon
flag has been added that can be OR'd into the JNFThreadContext
passed to JNFObtainEnv()
.
Java Deploy
Radar #7383077
Signed code access authorization dialog has small visible parent window.
Description:
The signed code access authorization dialog which requests signed code to run with escalated privileges shows a small parent window which is supposed to be invisible.
Resolution:
This issue has been resolved.
Radar #7390578
Installing Java software updates requires a reboot, or risks crashing applications linked against WebKit.
Description:
Changing the underlying JavaVM.framework and installed JVM bundles causes a version mismatch between the in-memory frameworks and the versions on disk. Symbol mismatches usually resulted in the application crashing when it started to load additional Java resources.
Workaround:
Quit any web browsers and Java applications before installing the Java software update, or restart them afterwards.
Resolution:
This issue has been partially resolved through weak-linking against new symbols in the JavaVM.framework. Java software updates no longer require a reboot or logout, but Java will not be functional in some applications until they are restarted.
Radar #7578937
Broken $JAVA_HOME/lib/plugin.jar
symlink.
Description:
The symlink at $JAVA_HOME/lib/plugin.jar
was pointing to a non-existent plugin2.jar
file in the Deploy.bundle.
Resolution:
This issue has been resolved.
Java EAWT
Radar #5851561
Native gesture events are not sent to Java.
Description:
Native gesture events were suppressed at the native window layer.
Resolution:
Gesture events are now routed through the EAWT event system. Applications can observe gestures by adding a GestureListener to any javax.swing.JComponent
using the com.apple.eawt.event.GestureHelper
class. See the JavaDoc in appledocs.jar
for more information about the com.apple.eawt.event
API.
Radar #7484445
Deadlock dispatching OpenFile EAWT event while launching.
Description:
There exists a rare deadlock that can occur while launching a bundled Java application by opening an associated document. The deadlock can occur between the application startup logic and the OpenFile event dispatching initializing the EAWT classes. The effect of this deadlock is an app that hangs at launch.
Resolution:
This issue has been resolved.
Java Graphics
Radar #5430543
Sun2D renderer crash in applets and clipped embedded views.
Description:
A commonly auto-reported crash in the Sun2D rendering loops could occur when scrolling embedded views (like applets in a web browser).
Resolution:
This issue has been resolved.
Radar #7504705
AlphaComposite: Crash rendering with bad opacity.
Description:
It is possible to crash the Sun2D graphics loops by creating an AlphaComposite with a bad opacity value.
Resolution:
This issue has been resolved.
Java HotSpot
Radar #7423544
JVMstat API broken if username contains an underscore.
Description:
The JVMstat API and all tools that use it (jps, jconsole, jvisualvm, etc) fail to launch if the current user's shortname contains an underscore character.
Resolution:
This issue has been resolved.
Radar #7666953
Debugging tools crash if reverse DNS of localhost does not resolve.
Description:
Java debugging tools like jdb can crash when connecting to a host that does not resolve. This can happen when the reverse DNS lookup of a host returns a name, but the forward DNS lookup of that name does not resolve.
Resolution:
This issue has been resolved.
Java JavaLib
Radar #7007567
IllegalStateException: recursive invocation when specifying custom system classloader.
Description:
When specifying a custom java.sytem.class.loader
, the JVM would throw an IllegalStateException, which was suppressed and logged.
Resolution:
This issue has been resolved.
Radar #7308370
No way to run Java jobs via libdispatch.
Description:
There has been no way to perform Java Runnables or Callables on serial or concurrent dispatch queues.
Resolution:
Executors for serial and concurrent dispatch queues can be obtained from com.apple.concurrent.Dispatch
.
Radar #7378413
JVM fails to open java.io.Files with unicode surrogate pair characters.
Description:
The JVM fails to detect the existence of or open java.io.Files with unicode surrogate pairs in the file name.
Resolution:
This issue has been resolved.
Radar #7772460
14compatibility.jar
causes more problems than it solves.
Description:
The 14compatibility.jar
is dynamically added to the end of the user classpath when accessing certain XML parsing classes to maintain backwards compatibility with poorly written apps. This approach is no longer generally required.
Resolution:
This issue has been resolved by generally removing the 14compatibility.jar
classpath machinery from Java SE 6. Now, known double-clickable applications that require it will have it applied based on their CFBundleIdentifer.
Radar #7840189
No way to run Java jobs on the main CFRunLoop.
Description:
There has been no way to perform Java Runnables or Callables on the main thread.
Resolution:
A blocking and non-blocking Executor for the main thread can be obtained from com.apple.concurrent.Dispatch
.
Java Plugin2
Radar #6934469
Applet access authorization dialogs don't come to foreground.
Description:
Applet access authorization dialogs in the out-of-process applet plugin failed to come to the foreground.
Resolution:
This issue has been resolved.
Radar #7308368
Plugin2 uses an overlay window and does not interleave with browser content.
Description:
The out-of-process Plugin2 has used an overlay window to render Java content, and cannot interleave that content with the browser window.
Resolution:
This issue has been resolved by rendering in the browser with the CoreGraphics NPAPI rendering mode. This has the side effect of disabling Java3D, JOGL, and other rendering technologies which rely on obtaining a pointer to the window, and placing their own content on top of it.
Radar #7308408
JOGL and Java3D does not work in Plugin2.
Description:
The out-of-process Plugin2 uses the CoreGraphics NPAPI rendering model to draw cooperatively with the web browser, so existing hardware accelerated technologies can not longer draw by attaching a 3D surface to the underlying Java window.
Workaround:
Use the in-process applet plug-in (Plugin1)
Radar #7631616
Windows opened by out-of-process applets can get lost.
Description:
Since windows opened by applets in Plugin2 are not in the browser process, they can get pushed to the background, and have no way to bring them forward (Window menu, app Dock icon window list, etc).
Resolution:
If an applet opens a window, it triggers the Java applet process to create a Dock icon.
Radar #7938512
Loading an applet hangs when $TMPDIR contains "-D"
Description:
When the out-of-process applet plugin is selected in Java Preferences, loading an applet could hang if your $TMPDIR happens to contain the string "-D"
Workaround:
Log in as a different user, or switch to in-process plugin.
Java ScreenMenuBar
Radar #7186837
Disposing a non-parented non-modal JDialog clears the menu bar.
Description:
When a non-modal JDialog with no parent closes, it cleared out the menu bar, instead of installing the menus from the next active window.
Resolution:
This issue has been resolved.
Radar #7420583
JMenuItems setVisible(false)
do not hide.
Description:
The screen menu bar would not hide JMenuItems that were marked setVisible(false)
.
Resolution:
This issue has been resolved.
Java Security
Radar #7446856
The default password for the Java cacerts keystore file changed.
Description:
The default password for the cacerts file changed from "changeit" to "changeme" in a previous release. This could cause a "java.io.IOException: Keystore was tampered with, or password was incorrect" error for some operations that directly access or change the cacerts keystore.
Resolution:
The cacerts keystore password has been reverted to the Oracle default "changeit".
Radar #7497116
Java PKCS11 config file points to incorrect shared library.
Description:
The Java SmartCardServices failed to load because the PCKS11 config file was pointing to the wrong native shared library.
Resolution:
This issue has been resolved.
Radar #7727853
HmacCore digester not thread safe.
Description:
The native OS X HMAC cryptographic hasher did not have the appropriate thread-safety checks and could crash under concurrent usage.
Resolution:
This issue has been resolved.
Java Sound
Radar #7257512
Distortion while recording from mono USB microphones.
Description:
There is an error in the Java recording buffer handling from mono microphone sources which results in static and pops.
Resolution:
This issue has been resolved.
Radar #7506878
MIDI device handling crashes with empty manufacturer name.
Description:
The Java MIDI device manager crashes when releasing a device with an empty manufacturer name.
Resolution:
This issue has been resolved.
Radar #7517596
Java hangs while closing a MIDI device.
Description:
The Java MIDI device manager hangs indefinitely when closing a device.
Resolution:
This issue has been resolved.
Java Toolkit
Radar #7471135
The AppleJavaExtensions.jar is out of date.
Description:
The AppleJavaExtensions.jar from http://developer.apple.com/library/mac/samplecode/AppleJavaExtensions is not always update-to-date with the current EAWT and EIO implementations in the latest Java software updates.
Resolution:
A copy of the extensions jar is present in /usr/share/java/Stubs/AppleJavaExtensions.jar
.
Radar #7488143
JavaDoc for EAWT and EIO does not contain @since tags.
Description:
The JavaDoc for the EAWT and EIO extensions does not contain the @since tags necessary to determine when which API was added in which release.
Resolution:
This issue has been resolved. All previous and current additions to the com.apple.* extensions contain @since information.
Java VM Tools
Radar #6949007
Java VisualVM is slow to attach to a Java process on OS X.
Description:
Java VisualVM is slower to attach to a Java process on OS X than on other platforms.
Resolution:
This issue has been resolved.
Radar #7771256
OpenFileDescriptorCount attribute of OperatingSystem MBean is always zero.
Description:
The OpenFileDescriptorCount of the java.lang/OperatingSystem MBean (observable through jconsole) was unimplemented, and always returned 0.
Resolution:
This issue has been resolved. The OpenFileDescriptorCount now returns number of the Java process' own entries in /dev/fd
.
Radar #7817511
"VisualVM" is now named "Java VisualVM"
Description:
To more accurately reflect product name and purpose of the VisualVM tool, it has been renamed "Java VisualVM" in the /usr/share/java/Tools
directory.
Resolution:
This issue has been resolved. The command-line tool remains "jvisualvm".
Java Web Start
Radar #7404451
"apple.awt.brushMetalLook" property ignored in Java Web Start.
Description:
The "apple.awt.brushMetalLook" system property defined in an application's JNLP file is ignored by the Java Web Start launcher.
Resolution:
This issue has been resolved.
Radar #7833746
Java Web Start permission dialog has small visible parent window.
Description:
The Java Web Start dialog which requests permissions for opening a file, clipboard access, or printing displayed a small parent window, which is supposed to be invisible.
Resolution:
This issue has been resolved.
Java Installer
Radar #7449332
Java for OS X v10.6 installer does not disable unsupported JVMs.
Description:
When confronted with unexpected unsupported JVMs in the /System/Library/Frameworks/JavaVM.framework/Versions
directory, the default OS X installer moves aside the directories and appends " 1" to their name. This behavior further confuses older JVMs which assume they are run from a hardcoded path.
Resolution:
This issue has been resolved by moving aside unsupported JVMs into a disabled
directory. If you require an older version of Java to make an application run correctly, please contact the application developer to ask them to upgrade to support the current version of Java SE 6, and file a bug with at http://bugreporter.apple.com with specific details about the compatibility issues that require use of the older version.
Copyright © 2010 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2010-05-14