mitre/HTTP-Proxy-Servlet

Jakarta EE 10 / Servlet spec 6.0 compatibility

Closed this issue · 5 comments

We've been using a slightly modified version of this Proxy Servlet for quite some time with Jakarta EE 9.1 stack of libraries (Jetty 11) and it has worked fine.

However, we are now migrating to Jakarta EE 10 with Jetty 12 and Servlet spec 6.0. The current version of the proxy is built against Servlet spec 5.0 (Jakarta 9.1), which is raising some warnings:

What are the plans for supporting the newer JEE spec? Is it safe to just remove those deprecated calls?

Those are pretty minor. There are no new plans but I went to the PR thread (#238)which chose spec 5 to ask why spec 5 and not newer specs.

https://github.com/mitre/HTTP-Proxy-Servlet/pull/238/files#r1085331506 6 is compatible with 5 and 5 was chosen deliberately for broad compatibility with servers.

Well the touted backwards compatibility is arguable, as it only applies to non-deprecated methods and APIs, see e.g. this article and release notes.

But, yes, I agree it makes sense to target v5.0. I was merely asking (from a position of someone who doesn't know a lot about the involved RFCs), what might be the impact on our application with those methods being NO-OP.
The same question could be applied to HttpServletResponse#setStatus(int sc, String sm) method, which has been previously deprecated and now removed from Servlet spec 6.0. That one was simply removed from the proxy in https://github.com/mitre/HTTP-Proxy-Servlet/pull/238/files#r1101714206

As there are no alternatives introduced, is the proxy slowly loosing features and not proxying all the data?

I sympathize with your point but these bits seem like minor metadata. If you have ideas to solve them and are willing to make it happen, I'm listening.

Yeah, I don't have any. I think I'll close this for now.