Quantcast

Deprecated Java EE Modules in JDK9

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Deprecated Java EE Modules in JDK9

Heiko Wagner
Sorry for my ignotance, but I need some advice on how to properly write
a desktop app that uses JAX-WS to pull some data from a WS-I Service.

I can understand why JAX-WS is deprecated and marked for removel to help
out the Java EE crwod to migrate their application servers to JDK9, but
I don't fully understand what the right thing would be to do in my
situation. Is the java.xml.ws module just "moved" to Java EE or is it
completely removed and replaced with a module that has a new name?

In the first case I ussume it would be the right thing to decare a
dependency on java.xml.ws and rely on the presence of the module in Java
SE 9 and ship a module implementing JAX-WS in Java SE 10 along my
application. I assume jlink would help me out to get a appropriate
runtime image in both cases. This would be just like the Java Mail API
case, where there is nothing wrong with using it in th Java SE context,
when you make sure you supply a implementation with your app and rely on
the platform to provide a implementation in the Java EE context.

In the latter case, is there already a proper new module name or module
alias I can depend on in my application?

Thanks for the help,

Heiko

--
Heiko Wagner - APIS Informationstechnologien GmbH
Gewerbepark A 13, 93086 Wörth a.d. Donau, Deutschland
Web: http://www.apis.de
E-Mail: [hidden email]
Tel.: +49 (0) 9482 - 9415 - 0
Fax: +49 (0) 9482 - 9415 - 25
Sitz der GmbH: Wörth/Donau, Amtsgericht Regensburg (HRB 6684)
Geschäftsführer: Julia Anna Dietz, Jürgen Eilers, Peter Rosenbeck
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Deprecated Java EE Modules in JDK9

Richard Opalka
Hi Heiko,


On 04/20/2017 09:38 AM, Heiko Wagner wrote:
> Sorry for my ignotance, but I need some advice on how to properly write
> a desktop app that uses JAX-WS to pull some data from a WS-I Service.
>
> I can understand why JAX-WS is deprecated and marked for removel to help
> out the Java EE crwod to migrate their application servers to JDK9, but
> I don't fully understand what the right thing would be to do in my
> situation. Is the java.xml.ws module just "moved" to Java EE or is it
> completely removed and replaced with a module that has a new name?
Java EE technology related modules are all 'upgradeable modules'.
The upgrade process is based on module naming scheme.
So Java EE related module names shouldn't change in the future.
And yes, they are "moved" to Java EE.
> In the first case I ussume it would be the right thing to decare a
> dependency on java.xml.ws and rely on the presence of the module in Java
> SE 9 and ship a module implementing JAX-WS in Java SE 10 along my
> application.
Correct.
> In the latter case, is there already a proper new module name or module
> alias I can depend on in my application?
No AFAIK
>
> Thanks for the help,
>
> Heiko
>
Rio
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Deprecated Java EE Modules in JDK9

Alan Bateman
In reply to this post by Heiko Wagner
On 20/04/2017 08:38, Heiko Wagner wrote:

> Sorry for my ignotance, but I need some advice on how to properly write
> a desktop app that uses JAX-WS to pull some data from a WS-I Service.
>
> I can understand why JAX-WS is deprecated and marked for removel to help
> out the Java EE crwod to migrate their application servers to JDK9, but
> I don't fully understand what the right thing would be to do in my
> situation. Is the java.xml.ws module just "moved" to Java EE or is it
> completely removed and replaced with a module that has a new name?
>
> In the first case I ussume it would be the right thing to decare a
> dependency on java.xml.ws and rely on the presence of the module in Java
> SE 9 and ship a module implementing JAX-WS in Java SE 10 along my
> application. I assume jlink would help me out to get a appropriate
> runtime image in both cases. This would be just like the Java Mail API
> case, where there is nothing wrong with using it in th Java SE context,
> when you make sure you supply a implementation with your app and rely on
> the platform to provide a implementation in the Java EE context.
>
> In the latter case, is there already a proper new module name or module
> alias I can depend on in my application?
>
With JDK 9 then you have several choices. For existing code then it
should continue to work with any of the following:

1. Compile/run with `--add-modules java.xml.ws` to use the java.xml.ws
module in the JDK.

2. Deploy the standalone version of JAX-WS on the class path.

3. Deploy the standalone version of the java.xml.ws module on the
upgrade module path (to override the module in the JDK) and compile/run
with `--add-modules java.xml.ws`

If you migrate your code to a module then your module will `requires
java.xml.ws` so you won't need `--add-modules java.xml.ws` on the
command line. You have the choice to use the java.xml.ws in the JDK or
you can deploy the standalone version of the java.xml.ws on the upgrade
module path.

If java.xml.ws is dropped in Java SE 10, and if JDK 10 declines to
bundle it, then deployments using the standalone version should continue
to just work.

To your question then I'm not aware of any proposal to rename the
java.xml.ws module. However, I believe the standalone version has chosen
to continue with the historical splitting of the API and implementation.
The API module will be "java.xml.ws" and the implementation modules will
have other names. This should be transparent to consumers of java.xml.ws
of course. Dmitry Kornilov or Roman Grigoriadi may wish to comment on
this as I think it would be useful to get some early testing of the
standalone versions as modules to make sure that there aren't any issues.

-Alan

Loading...