jsr339-experts@jax-rs-spec.java.net

[jsr339-experts] Re: Binding of ContainerRequestContext to Servlet

From: Markus KARG <markus_at_headcrashing.eu>
Date: Fri, 7 Sep 2012 13:53:35 +0200

> -----Original Message-----
> From: Sergey Beryozkin [mailto:sberyozkin_at_talend.com]
> Sent: Freitag, 7. September 2012 11:37
> To: jsr339-experts_at_jax-rs-spec.java.net
> Subject: [jsr339-experts] Binding of ContainerRequestContext to Servlet
>
> The documentation for all the ContainerRequestContext methods to do
> with retrieving or setting the properties refers to Servlet
> (effectively
> HttpServletRequest) attributes.
>
> getPropertyNames() even returns Enumeration.
>
> This concerns me a bit. I think if some users are keen to work with
> Servlet API in context of JAX-RS then they will expect more than just
> the ability to get an access to the underlying Servlet attributes. In
> other words, they'd want HTTPServletRequest.
>
> AFAIK, the whole idea was to be able to exchange properties between the
> filters, as such I do not see why Servlet even has to be mentioned, and
> the ancient legacy Enumeration interface has to be introduced into the
> signature.
>
> It also may send a message that JAX-RS is some kind of thin wrapper on
> top of Servlet API.
>
> Thoughts ?
>
> Cheers, Sergey

I also think that the JAX-RS API should not be too Servlet API related. If a
container is not using Servlet at all (what might become more and more
essential in future, when platforms turn from Web Hosting Cluster to
Application Clouds), there should be no need for the implementor to provide
a Servlet API class. This has some kind of design smell ("We all base on
Servlet API, so let's assume this for all others").