| |
| JavaBeans Activation Framework 1.2 |
| ================================== |
| |
| JAF 1.2 proposes a few minor changes to the JAF specification to |
| align with other changes in JDK 9. Following is a description of |
| the changes that are being introduced in JAF 1.2. The numbers in |
| parentheses are bug numbers; you can find more information about the |
| bug reports at: |
| |
| http://bugs.openjdk.java.net |
| |
| The JAF 1.2 RI will require Java SE 7 or later. JAF 1.2 will be |
| included in Java SE 9. |
| |
| The JAF 1.2 RI and TCK will be available under the same terms as the |
| JAF 1.1 RI and TCK. |
| |
| |
| =================================================================== |
| |
| 1. JDK 9 moves config files to <java.home>/conf (JDK-8049379) |
| ---------------------------------------------------------------- |
| |
| The specification for MailcapCommandMap is changed as follows: |
| |
| * <b>Mailcap file search order:</b><p> |
| * The MailcapCommandMap looks in various places in the user's |
| * system for mailcap file entries. When requests are made |
| * to search for commands in the MailcapCommandMap, it searches |
| * mailcap files in the following order: |
| * <p> |
| * <ol> |
| * <li> Programatically added entries to the MailcapCommandMap instance. |
| * <li> The file <code>.mailcap</code> in the user's home directory. |
| * <li> The file <code>mailcap</code> in the Java runtime. |
| * <li> The file or resources named <code>META-INF/mailcap</code>. |
| * <li> The file or resource named <code>META-INF/mailcap.default</code> |
| * (usually found only in the <code>activation.jar</code> file). |
| * </ol> |
| * <p> |
| * (The current implementation looks for the <code>mailcap</code> file |
| * in the Java runtime in the directory <code><i>java.home</i>/conf</code> |
| * if it exists, and otherwise in the directory |
| * <code><i>java.home</i>/lib</code>, where <i>java.home</i> is the value |
| * of the "java.home" System property. Note that the "conf" directory was |
| * introduced in JDK 9.) |
| |
| |
| The specification for MimetypesFileTypeMap is changed as follows: |
| |
| * <b>MIME types file search order:</b><p> |
| * The MimetypesFileTypeMap looks in various places in the user's |
| * system for MIME types file entries. When requests are made |
| * to search for MIME types in the MimetypesFileTypeMap, it searches |
| * MIME types files in the following order: |
| * <ol> |
| * <li> Programmatically added entries to the MimetypesFileTypeMap instance. |
| * <li> The file <code>.mime.types</code> in the user's home directory. |
| * <li> The file <code>mime.types</code> in the Java runtime. |
| * <li> The file or resources named <code>META-INF/mime.types</code>. |
| * <li> The file or resource named <code>META-INF/mimetypes.default</code> |
| * (usually found only in the <code>activation.jar</code> file). |
| * </ol> |
| * <p> |
| * (The current implementation looks for the <code>mime.types</code> file |
| * in the Java runtime in the directory <code><i>java.home</i>/conf</code> |
| * if it exists, and otherwise in the directory |
| * <code><i>java.home</i>/lib</code>, where <i>java.home</i> is the value |
| * of the "java.home" System property. Note that the "conf" directory was |
| * introduced in JDK 9.) |
| |
| |
| =================================================================== |
| |
| 2. Remove JAF's API dependency on java.beans.Beans.instantiate (JDK-804773) |
| ---------------------------------------------------------------------------- |
| |
| To allow custom runtimes to be created without the java.desktop module, |
| the getCommandObject method of CommandInfo is changed to make the use |
| of java.beans.Beans.instantiate conditional: |
| |
| /** |
| * Return the instantiated JavaBean component. |
| * <p> |
| * If the current runtime environment supports |
| * {@link java.beans.Beans#instantiate Beans.instantiate}, |
| * use it to instantiate the JavaBeans component. Otherwise, use |
| * {@link java.lang.Class#forName Class.forName}. |
| * <p> |
| * The component class needs to be public. |
| * On Java SE 9 and newer, if the component class is in a named module, |
| * it needs to be in an exported package. |
| ... |