everrest
everrest copied to clipboard
Certify this implementation
Are there any plans to keep this project active? Now the TCKs for the JAX-RS are available and we can certify the implementation ourselves.
So as this project already implements a large portion of the spec, it would just require to implement the missing bits and certify this implementation.
I can help setting up the TCK if you will.
If this project is not active anymore, would you mind if I fork it and start implementing the missing features?
(PS: Now the main package is "jakarta" instead of "javax", so it would be needed to release a major version of this library)
Some links:
https://jakarta.ee/specifications/restful-ws/ https://www.agilejava.eu/2021/02/05/compatible-implementations/
/cc @skabashnyuk
@Thihup that is a great initiative. How do you see the implementation of it?
So, a big missing part to certify is to the the HTTP client. I'd very willing to help in this project to have a new certified implementation.
I'm a also interested because we are building a new Jakarta EE runtime, and maybe we could use this implementation 😉
So, a big missing part to certify is to the the HTTP client.
Is this a blocker. Do you have examples or a list of what has to be done to get the first results?
FYI.
At this point the major beneficiary of this project https://github.com/eclipse/che. It uses everrest
as a core component of che server. As far as I know there are no plans significantly invest in everrest
development. Of cause I'll assist as much as possible as a contributor to this open-source project.
The HTTP client uses a lot of existing code of the server part. From my tests, it is possible to just add the Jersey client to the classpath and it will use the implementation of the Everrest. Probably this won't be the solution for the long run, but to get closer to the certification this may be one solution (https://jakarta.ee/specifications/restful-ws/2.1/apidocs/javax/ws/rs/client/package-summary.html).
There are also new features added to the spec, like using Filters. From what I have seen in this project it also implements Filters in a proprietary way, so I guess this part also would be easy to implement (https://jakarta.ee/specifications/restful-ws/2.1/apidocs/javax/ws/rs/container/package-summary.html)
Of course, there are some other things that were added, like adding support for JSON-P, Server Sent Event, but having this project to be alive, it would be straightforward to implement.
Here is a summary of the new things added in the JAX-RS 2.0: https://dzone.com/articles/whats-new-jax-rs-20 There is also a revision of it, JAX-RS 2.1: https://www.infoq.com/news/2017/08/JAX-RS-2.1-released/
So, I'm pretty surprised to have found this project, and it has already implemented a good part of the spec :)
@Thihup do you have a sense of how many changes it requires? Are you willing to contribute to the code?