Max Bureck created CXF-7446:
-------------------------------
Summary: Provide Java 9 SE support for JAX-WS
Key: CXF-7446
URL: https://issues.apache.org/jira/browse/CXF-7446
Project: CXF
Issue Type: Improvement
Components: Build system, JAX-WS Runtime
Environment: Java 9 JDK
Reporter: Max Bureck
Priority: Minor
In Java 9 the endorsed directory mechanism to replace API implementations
shipped with the JDK will be removed. The JAX-WS API and implementation modules
are even deprecated and will most likely be removed with Java 10.
One way for a Java SE based application to migrate to an alternative JAX-WS
implementation would be through the replacement mechanism for endorsed
directories: A module based on the Java Platform Module System (JPMS, aka
Jigsaw).
It would be great for Java SE based applications if CXF could provide a drop-in
replacement for the JAX-WS API and implementation (defined in the "java.xml.ws"
and the "java.xml.ws.annotation" modules in JDK 9).
To do this, a build could to be set-up creating a modular jar file, or a JMOD
file. There are probably many ways how to wrap CXF's libraries into modules or
turn them into modules. For the sake of replacing the JDK's JAX-WS
implementation, a single module containing the JAX-WS related libraries of the
same scope (just for HTTP/HTTPS transport) and simply exposing the JAX-WS API
as public API would be sufficient.
Since JDK 9 does not include any JAX-WS related class files by default on the
classpath (needs to be manually "unlocked" via command --add modules
java.se.ee), alternatively the user guide may include a section what libraries
to put on the classpath to get JAX-WS working on Java 9. It looks like the
current CXF distribution does not come with the JAX-WS APIs, so with the
current CXF packaging it is not clear how to get started with a Java 9 SE
application using JAX-WS with CXF. This documentation option may be easier to
get done than creating some kind of a module uber-jar/fat-jar containing all
JAX-WS related libraries.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)