[jax-rs-spec users] Re: Request for comments: Injecting _at_XxxParam into entity providers

From: Bill Burke <>
Date: Fri, 5 Feb 2016 16:44:23 -0500

Or, you could just inject and use UriInfo. Simpler.

On 2/5/2016 11:55 AM, Markus KARG wrote:
> As an alternative, we could grant MessageBodyWriter and resource
> classes static access to a shared property map (just like interceptors
> share a properties map). That way, a resource could get injected the
> @XxxParam instance, then put it into the map, and the MBW could look
> it up from there. That would be fine, too.
> *From:*Bill Burke []
> *Sent:* Donnerstag, 4. Februar 2016 20:31
> *To:*
> *Subject:* Re: Request for comments: Injecting @XxxParam into entity
> providers
> MBW, MBR, Interceptors, and Filters are all singletons. I have a ton
> of implementations of these classses that do initialization at boot
> time. @XXXParam annotations would require field injection which just
> would not work with singletons.
> So -1 unless you can provide a @Singleton annotation.
> On 2/4/2016 2:01 PM, Markus KARG wrote:
> Experts,
> I'd like to discuss an idea with you. I don't actually propose to
> do this change in JAX-RS 2.1, but depending on the outcome of our
> discussion it might make sense to prepare our products for such an
> API change to be part of JAX-RS 2.2 or 3.0.
> What I like you to comment on is that I really miss using
> @XxxParam in entity providers.
> Example: Today I wrote a MessageBodyWrite which needs to know the
> value of a matrix param. I solved it by @Context UriParam and uses
> a rather lengthy chain of API calls to finally get it. How much
> smarter the solution would like if I just could use @MatrixParam
> instead!
> So I really would love to get rid of the restriction that
> @XxxParam works with resource class only, but in fact would like
> to allow its use on entity providers also.
> What do you think?
> -Markus
> --
> Bill Burke
> JBoss, a division of Red Hat

Bill Burke
JBoss, a division of Red Hat