The website of resteasy states the following:
Implements Jakarta RESTful Web Services (JAX-RS)
However, when I look a the source code from the last release (at this moment 4.7.1), I see that javax.ws.rs is still used.
We use some specific resteasy stuff in our application, so moving to Jakarta EE is impossible at this moment? Or am I missing something here? An example:
ClientInvocation.extractResult(new GenericType<String>(String.class), response, null);
So ClientInvocation.extractResult expects javax.ws.rs.core.GenericType, but I'm providing jakarta.ws.rs.core.GenericType.
Update
I'll try to explain where this question comes from.
Our current stack:
- Jboss EAP 7.3.x (~Wildfly 18)
- OpenJDK 11
- Java EE 8
We're trying to move to OpenJDK 13, but that resulted in the following exception when deploying our application:
Caused by: java.lang.reflect.GenericSignatureFormatError: Signature Parse error: Expected Field Type Signature
Remaining input: javax.transaction.Transactional$TxType
at java.base/sun.reflect.generics.parser.SignatureParser.error(SignatureParser.java:124)
When I removed all @Transactional annotations from our application, the deploy worked again. So I assumed that javax.transaction is not available in OpenJDK 13, since that's the only thing I changed.
I got it working again by adding the following dependency:
<dependency>
<groupId>jakarta.transaction</groupId>
<artifactId>jakarta.transaction-api</artifactId>
</dependency>
The reason I used a Jakarta dependency: javax.transaction didn't work, so I tried something different. I didn't try to add an extra dependency. In hindsight, that probably where I'm wrong. And since I was reading (but not really understanding) 'just replace your javax.* by jakarta.*' in several blog posts, I thought this was the way forward. I now see that I was reading blog posts about moving to Jakarta EE 9.
Bottom line: I don't think I correctly understand the technological impact of the javax -> jakarta renaming.