JDK-8056298 : Separate java.awt.datatransfer from the desktop module
  • Type: Enhancement
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 9
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2014-08-28
  • Updated: 2015-06-03
  • Resolved: 2015-01-16
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.
JDK 9
9 b52Fixed
Related Reports
Relates :  
Description
JDK-8037485 has refactored java.awt.datatransfer to eliminate dependency on AWT.    This is a follow up enhancement to restructure the source of java.awt.datatransfer and its implementation from src/java.desktop to src/java.datatransfer.

This allows datatransfer be built as a separate module and used when  AWT/desktop module is not present.

The datatransfer API is used by the Java Activiation Framework, JavaMail and JAXB but is currently unable to be used in embedded environments that don't have the AWT/desktop module present.

Comments
Sergey - has your changes been sent to awt-dev for review? If not then would it be possible to cc build-dev when you send our the review request?
01-01-2015

JDK-8047773 tracks the update to the JavaBeans Activation Framework to allow it run without java.beans. There isn't any requirement for CORBA to run without the java.desktop module as CORBA has API dependences on java.applet.Applet. There was prototype work done for JAXB, SAAJ and JAX-WS to eliminate the dependency on java.awt.Image and other AWT classes. This can be re-visited again if there is a strong need but it does require spec changes as identified in the prototype work.
28-12-2014

Suggested fix: http://cr.openjdk.java.net/~serb/8056298/root/webrev.00/ http://cr.openjdk.java.net/~serb/8056298/jdk/webrev.00/
25-12-2014

I am trying to eliminate dependency on java.desktop from java.activation, java.corba, java.xml.bind, java.xml.soap, java.xml.ws, jdk.xml.bind. It seems that assumption that these packages depends only on java.datatransfer module was incorrect: java.activation depends on java.beans. java.corba depends on java.applet java.xml.bind depends on java.beans + java.awt.image + java.awt + javax.swing java.xml.soap depends on javax.Imageio +java.awt.image + java.awt java.xml.ws depends on java.awt.image + javax.imageio
25-12-2014

The foundation work has been done in JDK-8037485 so I don't expect this new task to require too much effort, it's mostly just moving the source code and rejigging the build and module definitions. It's probably best done by the client team to ensure that the right tests are run before it is pushed. It's not critical for upcoming milestones but would be desirable to get done before the end of 2014.
29-08-2014