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

[jsr339-experts] Re: [jax-rs-spec users] Intercepting after MBR reads the stream but before invoking ?

From: Sergey Beryozkin <sberyozkin_at_talend.com>
Date: Wed, 9 Oct 2013 21:48:08 +0100

Hi
On 09/10/13 17:19, Santiago Pericas-Geertsen wrote:
>
> On Oct 8, 2013, at 7:46 AM, Sergey Beryozkin <sberyozkin_at_talend.com> wrote:
>
>> Hi
>>
>> Now and then we get the queries on how to get access not only to the target class/method (ResourceInfo helps there) but to the parameter instances, before the application code gets invoked, example for the monitoring purposes.
>> ResourceInfo + UriInfo + accessing InputStream if any from the filters can offer the way to access all of the values representing individual target method parameters, but I wonder if we can offer something simpler/cooler,
>>
>> Any ideas ? what about introducing one extra stage, in addition to Pre and Post matching, PreInvoking where we'd have a provider like ResourceInfoFilter with the signature like this:
>>
>> ResourceInfo getResourceInfo();
>>
>> ResourceInfo will have a new method added too:
>>
>> List<Object> getMehodParameterValues();
>>
>> this will throw ISE unless invoked from ResourceInfoFilter ?
>
> If CDI is available, wouldn't a CDI interceptor work for this purpose?
>
I guess yes, Spring AOP will do too. Do you reckon it is completely out
of JAX-RS scope, it seems we nearly have it, but may be you are right.
We have cases where people do not work with sophisticated AOP-like
mechanisms, so for now they need to do this work the hard way...

Cheers, Sergey
> -- Santiago
>