JDK-8026869 : [macosx] Support apple.awt.use-file-dialog-packages property
  • Type: Enhancement
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 7u6
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: os_x
  • Submitted: 2013-10-18
  • Updated: 2014-07-29
  • Resolved: 2013-12-17
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
8u20Fixed 9 b06Fixed

Java 7 on Mac no longer supports apple.awt.use-file-dialog-packages property

OSX 10.8
Darwin macbook.local 12.4.0 Darwin Kernel Version 12.4.0: Wed May  1 17:57:12 PDT 2013; root:xnu-2050.24.15~1/RELEASE_X86_64 x86_64

java version "1.7.0_40"
Java(TM) SE Runtime Environment (build 1.7.0_40-b43)
Java HotSpot(TM) 64-Bit Server VM (build 24.0-b56, mixed mode)

In Java 6 on OSX the apple.awt.use-file-dialog-packages property is used by FIleDialog to display application bundles as leaf node rather than a folder (which is what they actually are). This allows an application to create a dialog that lets the user pick a bundle as an application i.e to let them configure their browser or Texteditor.

This option is no longer available

I no longer have that installed but this worked with Apples version of Java

Create a FileDialog
Navigate to the /Applications folder

Applications are listed and cannot be expanded, the same behaviour as using a Finder window

Use of the the property can be seen in ApplicationDialog within this project https://java.net/projects/mrjadapter/sources/svn/content/trunk/src/net/roydesign/ui/ApplicationDialog.java?rev=35

The problem is that this issue makes it difficult to update my application to use Java 7 rather than Java 6 as we are being advised to do because it degrades the functionality of my application