Skip to content

Java 16 and aged apis and dependencies #1191

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
eivinhb opened this issue Mar 29, 2021 · 3 comments
Closed

Java 16 and aged apis and dependencies #1191

eivinhb opened this issue Mar 29, 2021 · 3 comments
Assignees
Labels
for: stackoverflow A question that's better suited to stackoverflow.com status: invalid An issue that we don't feel is valid

Comments

@eivinhb
Copy link

eivinhb commented Mar 29, 2021

So we are trying to run on java 16. There are a lot of hurdles to pass to make this work. But for now I think we are stuck on dependencies in spring-ws:

We are using com.sun.xml.wsit:xws-security:1.3.1 from 2008 (!) now. This has been made available with jakarta as org.glassfish.metro:wssx-api and org.glassfish.metro:wssx-impl. I have noe idea whether this would work with java 16 or not, but I try and update the dependences. The problem then is that Spring WS core SaajSoapMessage uses javax.xml.soap not the new jakarta.xml.soap. OK, I try and fork spring-ws to see if I can update the dependencies og spring-ws and change the package to jakarta. But then I get interop problem between SaajSoapMessage and jakarta.xml.soap.api.SOAPMessage on the jakarta.activation.DataHandler.
Now I think this is a little too deep and I have a feeling that spring-ws needs to change its use from javax.activation.DataHandler to jakarta.activation.DataHandler but that needs to change all the way down to Spring oxm MimeContainer, I believe.

So my question then is: Is there a roadmap for this in Spring? 🙏

@mdeinum
Copy link
Contributor

mdeinum commented Apr 7, 2021

Related: spring-projects/spring-framework#25354

@gregturn
Copy link
Contributor

gregturn commented Apr 8, 2021

Thank you @mdeinum for cross linking to the issue documenting Spring Framework's plans for javax version jakarta-based versions of libraries.

In general, Spring Web Services will follow Spring Framework's trajectory on supporting javax-based spec APIs, and switching (through a new release) to jakarta-based spec APIs when Framework switches.

@gregturn
Copy link
Contributor

@eivinhb In general, Spring Boot 3.0 and by extension Spring WS 4.0 are now on Jakarta EE APIs. This means that we can no longer use XWS-Security. This is covered in my blog post (https://spring.io/blog/2022/12/02/spring-ws-samples-upgraded-for-spring-boot-3-0) where I also showed an updated version of the Spring WS Samples project.

https://github.com/spring-projects/spring-ws-samples is a collection of examples, not meant so much to show every single wrinkle for doing SOAP with Spring WS, but instead to show a handful of ways to use the tools that once were buried inside the JDK but have since moved elsewhere.

If you are on JDK 16, and probably headed toward JDK 17, then it may suit you to know that Spring WS is ALSO built on JDK 17. Again, check out the blog post above to see other impacts to this. In the meantime, I'm closing this ticket. Feel free to open a new one if you have issues.

@gregturn gregturn added for: stackoverflow A question that's better suited to stackoverflow.com status: invalid An issue that we don't feel is valid labels Apr 18, 2023
@gregturn gregturn self-assigned this Apr 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
for: stackoverflow A question that's better suited to stackoverflow.com status: invalid An issue that we don't feel is valid
Projects
None yet
Development

No branches or pull requests

3 participants