You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by David Hay <da...@enstratius.com> on 2013/10/09 16:18:34 UTC

Re: Applying interceptor to only some methods

Hi Sergey,

Yes, that worked by upgrading, thx.

So I am able to get the path params from URIInfo in the
ContainerRequestFilter, but I am also passing a single non-path "command"
parameter that encapsulates all the other params (passed as JSON) and has a
validate() method added to it.

I need to call that validate() method in the ContainerRequestFilter, but
can't see a way to grab the object.

The method signature is similar to:

   public Response doSomething(@PathParam("pathParam1")long pathParam1,
MyCmdObject myCmdObject)

Can you point me in the right direction, please, to access myCmdObject in
the filter?

cheers,

David



On Mon, Sep 30, 2013 at 12:15 PM, Sergey Beryozkin <sb...@gmail.com>wrote:

> On 30/09/13 15:17, David Hay wrote:
>
>> Voted.
>>
>> One more question - if I throw an exception from the
>> ContainerRequestFilter, is there any way to get my ExceptionHandler to
>> catch it?
>>
>>  Do you mean JAX-RS ExceptionMapper ? Definitely has to work, in latest
> CXF 2.7.7 for sure
>
> Sergey
>
>>
>>
>>
>> On Sun, Sep 29, 2013 at 2:07 PM, Sergey Beryozkin <sberyozkin@gmail.com
>> <ma...@gmail.com>> wrote:
>>
>>     Sorry,
>>
>>     https://issues.apache.org/__**jira/browse/CXF-4199<https://issues.apache.org/__jira/browse/CXF-4199>
>>
>>     <https://issues.apache.org/**jira/browse/CXF-4199<https://issues.apache.org/jira/browse/CXF-4199>
>> >
>>
>>     On 29/09/13 19:06, Sergey Beryozkin wrote:
>>
>>         Vote for this JIRA please...
>>         Sergey
>>         On 29/09/13 19:03, Sergey Beryozkin wrote:
>>
>>             Hi
>>
>>             I've tried it on the trunk & CXF 2.7.8-SNAPSHOT,
>>             getPropertyNames does
>>             not throw NPE and returns an initialized collection,
>>
>>             Get UriInfo from the context and check path parameters from
>> it.
>>
>>             Re supporting @Provider - it is recognized, but no
>>             auto-discovery is
>>             done - I'm hoping to spend some time on it, many providers
>>             do need to be
>>             configured which the default auto-discovery would interfere
>>             with, but I
>>             agree for some simple providers it can make sense...
>>
>>             Sergey
>>
>>             On 27/09/13 20:51, David Hay wrote:
>>
>>                 Hi again,
>>
>>                 It appears that 'props' is null.
>>
>>                 I'm trying to get hold of the path parameters.  What's
>>                 the best way to
>>                 do that?
>>
>>
>>                 On Fri, Sep 27, 2013 at 3:32 PM, David Hay
>>                 <david.hay@enstratius.com <mailto:david.hay@enstratius.**
>> com <da...@enstratius.com>>
>>                 <mailto:david.hay@enstratius._**_com
>>
>>                 <ma...@enstratius.com>>>>
>> wrote:
>>
>>                      Actually, I discovered that CXF doesn't support
>>                 @Provider yet?
>>
>>                      I went ahead and registered it in CXF, and in the
>>                 filter tried to
>>                 do:
>>
>>                          Enumeration e =
>>                 requestContext.__**getPropertyNames();
>>
>>
>>                      However, I get this:
>>
>>                          <ns1:XMLFault
>>                      xmlns:ns1="http://cxf.apache._**
>> _org/bindings/xformat
>>                 <http://cxf.apache.org/**bindings/xformat<http://cxf.apache.org/bindings/xformat>
>> >"><ns1:__**faultstring
>>
>>                 xmlns:ns1="http://cxf.apache._**_org/bindings/xformat
>>                 <http://cxf.apache.org/**bindings/xformat<http://cxf.apache.org/bindings/xformat>
>> >">java.__**lang.NullPointerException</__**ns1:faultstring></ns1:__**
>> XMLFault>*
>>
>>
>>
>>
>>                      Thoughts?
>>
>>
>>
>>                      On Fri, Sep 27, 2013 at 3:16 PM, David Hay
>>                 <david.hay@enstratius.com <mailto:david.hay@enstratius.**
>> com <da...@enstratius.com>>
>>                      <mailto:david.hay@enstratius._**_com
>>
>>                 <ma...@enstratius.com>>>>
>> wrote:
>>
>>                          Hi Sergey,
>>
>>                          I added a ContainerRequestFilter with
>>                 @Provider...but I don't
>>                          see it getting called at all.
>>
>>                          What am I missing?
>>
>>
>>                          On Fri, Sep 6, 2013 at 4:51 AM, Sergey Beryozkin
>>                          <sberyozkin@gmail.com
>>                 <ma...@gmail.com>
>>                 <mailto:sberyozkin@gmail.com
>>
>>                 <ma...@gmail.com>>**> wrote:
>>
>>                              Hi
>>
>>                              On 05/09/13 20:09, David Hay wrote:
>>
>>                                  Hi,
>>
>>                                  I have a group of RESTful endpoints
>>                 that all require the
>>                                  same
>>                                  pre-validation (eg ensuring that the
>>                 related domain
>>                                  object exists).
>>
>>                                  Is it possibly to set up an interceptor
>>                 that is somehow
>>                                  configured to
>>                                  perform such validation for a set of
>>                 methods/classes/urls?
>>
>>                                  If not, is there a suggested way to
>>                 accomplish this?
>>
>>                              Starting from CXF 2.7.x you can use JAX-RS
>>                 2.0 NameBinding
>>                              to attach ContainerRequestFilter to
>>                 individual methods or
>>                              classes, and the filters can also check
>>                 request URI and
>>                              ignore the validation if needed.
>>
>>                              ContainerRequestFilter with a @PreMatch
>>                 annotation can be
>>                              used to do the validation before the match
>>                 has been done
>>
>>                              Cheers, Sergey
>>
>>                                  thanks!
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>     --
>>     Sergey Beryozkin
>>
>>     Talend Community Coders
>>     http://coders.talend.com/
>>
>>     Blog: http://sberyozkin.blogspot.com
>>
>>
>>
>
>

Re: Applying interceptor to only some methods

Posted by Sergey Beryozkin <sb...@gmail.com>.
Hi Mandy

Thanks for the help :-),

I've thought of the other possible option which
might be used before 2.7.8 gets released,

- create JAX-RS Response and return it as CXF MessageContentsList,

Response r = new MyExceptionMapper().toResponse(new MyException());
return new MessageContentsList(r);

This will work with a custom invoker though, something like this should 
work with the in interceptor:

Response r = new MyExceptionMapper().toResponse(new MyException());
Message outMessage = new MessageImpl();
outMessage.setContent(List.class, new MessageContentsList(r));

inMessage.getExchange().setOutMessage(outMessage);
inMessage.getInterceptorChain().abort();

Cheers, Sergey


On 13/10/13 21:58, Mandy Warren wrote:
> Hi David,
>
> I asked a similar question not so long ago and Sergey sent me the following link which explained how to get exceptions from interceptors handled:
>
> https://cwiki.apache.org/confluence/display/CXF20DOC/JAX-RS+Basics#JAX-RSBasics-MappingexceptionsthrownfromCXFinterceptors
>
> Note you need to be using 2.7.8-SNAPSHOT to above to test this.
>
> The Exception Mapper in 2.7.7 and earlier will only catch exceptions from your filters or from your application code.
>
> FYI my full thread can be seen here:
>
> http://cxf.547215.n5.nabble.com/Handling-exceptions-in-a-JAX-RS-fault-interceptor-when-using-Local-Transport-td5733958.html
>
> Hope that helps
>
> Mandy
>
> On 11 Oct 2013, at 21:50, David Hay wrote:
>
>> Hi Sergey,
>>
>> Thanks, that worked with a custom Interceptor at Phase.PRE_INVOKE.
>>
>> However, it looks like any exception I throw is NOT caught by my JAX-RS
>> ExceptionMapper.
>>
>> Is there any way to hook things up so that it is?
>>
>> cheers,
>>
>> David
>>
>>
>>
>> On Wed, Oct 9, 2013 at 10:53 AM, Sergey Beryozkin <sb...@gmail.com>wrote:
>>
>>> Or may be you can use Spring AOP for now if you work with Spring
>>>
>>> Sergey
>>>
>>> On 09/10/13 15:52, Sergey Beryozkin wrote:
>>>
>>>> Hi
>>>> On 09/10/13 15:18, David Hay wrote:
>>>>
>>>>> Hi Sergey,
>>>>>
>>>>> Yes, that worked by upgrading, thx.
>>>>>
>>>>> So I am able to get the path params from URIInfo in the
>>>>> ContainerRequestFilter, but I am also passing a single non-path
>>>>> "command" parameter that encapsulates all the other params (passed as
>>>>> JSON) and has a validate() method added to it.
>>>>>
>>>>> I need to call that validate() method in the ContainerRequestFilter, but
>>>>> can't see a way to grab the object.
>>>>>
>>>>> The method signature is similar to:
>>>>>     public Response doSomething(@PathParam("**pathParam1")long
>>>>> pathParam1,
>>>>> MyCmdObject myCmdObject)
>>>>>
>>>>> Can you point me in the right direction, please, to access myCmdObject
>>>>> in the filter?
>>>>>
>>>>> Right, it is not possible to do it the portable way, I'm hoping JAX-RS
>>>> will get it fixed somehow, in meantime, try either a custom invoker or
>>>> regular CXF interceptor at the PRE-INVOKE phase, see:
>>>>
>>>> https://issues.apache.org/**jira/browse/CXF-5309?**
>>>> focusedCommentId=13789196&**page=com.atlassian.jira.**
>>>> plugin.system.issuetabpanels:**comment-tabpanel#comment-**13789196<https://issues.apache.org/jira/browse/CXF-5309?focusedCommentId=13789196&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13789196>
>>>>
>>>>
>>>> HTH, Sergey
>>>>
>>>> cheers,
>>>>>
>>>>> David
>>>>>
>>>>>
>>>>>
>>>>> On Mon, Sep 30, 2013 at 12:15 PM, Sergey Beryozkin <sberyozkin@gmail.com
>>>>> <ma...@gmail.com>> wrote:
>>>>>
>>>>>     On 30/09/13 15:17, David Hay wrote:
>>>>>
>>>>>         Voted.
>>>>>
>>>>>         One more question - if I throw an exception from the
>>>>>         ContainerRequestFilter, is there any way to get my
>>>>>         ExceptionHandler to
>>>>>         catch it?
>>>>>
>>>>>     Do you mean JAX-RS ExceptionMapper ? Definitely has to work, in
>>>>>     latest CXF 2.7.7 for sure
>>>>>
>>>>>     Sergey
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>         On Sun, Sep 29, 2013 at 2:07 PM, Sergey Beryozkin
>>>>>         <sberyozkin@gmail.com <ma...@gmail.com>
>>>>>         <mailto:sberyozkin@gmail.com <ma...@gmail.com>>**>
>>>>> wrote:
>>>>>
>>>>>              Sorry,
>>>>>
>>>>>         https://issues.apache.org/____**jira/browse/CXF-4199<https://issues.apache.org/____jira/browse/CXF-4199>
>>>>>         <https://issues.apache.org/__**jira/browse/CXF-4199<https://issues.apache.org/__jira/browse/CXF-4199>
>>>>>>
>>>>>
>>>>>              <https://issues.apache.org/__**jira/browse/CXF-4199<https://issues.apache.org/__jira/browse/CXF-4199>
>>>>>         <https://issues.apache.org/**jira/browse/CXF-4199<https://issues.apache.org/jira/browse/CXF-4199>
>>>>>>>
>>>>>
>>>>>              On 29/09/13 19:06, Sergey Beryozkin wrote:
>>>>>
>>>>>                  Vote for this JIRA please...
>>>>>                  Sergey
>>>>>                  On 29/09/13 19:03, Sergey Beryozkin wrote:
>>>>>
>>>>>                      Hi
>>>>>
>>>>>                      I've tried it on the trunk & CXF 2.7.8-SNAPSHOT,
>>>>>                      getPropertyNames does
>>>>>                      not throw NPE and returns an initialized collection,
>>>>>
>>>>>                      Get UriInfo from the context and check path
>>>>>         parameters from it.
>>>>>
>>>>>                      Re supporting @Provider - it is recognized, but no
>>>>>                      auto-discovery is
>>>>>                      done - I'm hoping to spend some time on it, many
>>>>>         providers
>>>>>                      do need to be
>>>>>                      configured which the default auto-discovery would
>>>>>         interfere
>>>>>                      with, but I
>>>>>                      agree for some simple providers it can make sense...
>>>>>
>>>>>                      Sergey
>>>>>
>>>>>                      On 27/09/13 20:51, David Hay wrote:
>>>>>
>>>>>                          Hi again,
>>>>>
>>>>>                          It appears that 'props' is null.
>>>>>
>>>>>                          I'm trying to get hold of the path parameters.
>>>>>           What's
>>>>>                          the best way to
>>>>>                          do that?
>>>>>
>>>>>
>>>>>                          On Fri, Sep 27, 2013 at 3:32 PM, David Hay
>>>>>                          <david.hay@enstratius.com
>>>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>
>>>>>         <mailto:david.hay@enstratius._**_com
>>>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>
>>>>>                          <mailto:david.hay@enstratius.
>>>>>         <ma...@enstratius.>**____com
>>>>>
>>>>>                          <mailto:david.hay@enstratius._**_com
>>>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>>>
>>>>> wrote:
>>>>>
>>>>>                               Actually, I discovered that CXF doesn't
>>>>>         support
>>>>>                          @Provider yet?
>>>>>
>>>>>                               I went ahead and registered it in CXF, and
>>>>>         in the
>>>>>                          filter tried to
>>>>>                          do:
>>>>>
>>>>>                                   Enumeration e =
>>>>>                          requestContext.____**getPropertyNames();
>>>>>
>>>>>
>>>>>                               However, I get this:
>>>>>
>>>>>                                   <ns1:XMLFault
>>>>>
>>>>>           xmlns:ns1="http://cxf.apache._**___org/bindings/xformat
>>>>>                          <http://cxf.apache.org/__**bindings/xformat<http://cxf.apache.org/__bindings/xformat>
>>>>>         <http://cxf.apache.org/**bindings/xformat<http://cxf.apache.org/bindings/xformat>
>>>>>>> "><ns1:____**faultstring
>>>>>
>>>>>
>>>>>         xmlns:ns1="http://cxf.apache._**___org/bindings/xformat
>>>>>                          <http://cxf.apache.org/__**bindings/xformat<http://cxf.apache.org/__bindings/xformat>
>>>>>
>>>>> <http://cxf.apache.org/**bindings/xformat<http://cxf.apache.org/bindings/xformat>
>>>>>>> ">java.____**lang.NullPointerException</___**
>>>>> _ns1:faultstring></ns1:____**XMLFault>*
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>                               Thoughts?
>>>>>
>>>>>
>>>>>
>>>>>                               On Fri, Sep 27, 2013 at 3:16 PM, David Hay
>>>>>                          <david.hay@enstratius.com
>>>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>
>>>>>         <mailto:david.hay@enstratius._**_com
>>>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>
>>>>>                               <mailto:david.hay@enstratius.
>>>>>         <ma...@enstratius.>**____com
>>>>>
>>>>>                          <mailto:david.hay@enstratius._**_com
>>>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>>>
>>>>> wrote:
>>>>>
>>>>>                                   Hi Sergey,
>>>>>
>>>>>                                   I added a ContainerRequestFilter with
>>>>>                          @Provider...but I don't
>>>>>                                   see it getting called at all.
>>>>>
>>>>>                                   What am I missing?
>>>>>
>>>>>
>>>>>                                   On Fri, Sep 6, 2013 at 4:51 AM, Sergey
>>>>>         Beryozkin
>>>>>                                   <sberyozkin@gmail.com
>>>>>         <ma...@gmail.com>
>>>>>                          <mailto:sberyozkin@gmail.com
>>>>>         <ma...@gmail.com>>
>>>>>                          <mailto:sberyozkin@gmail.com
>>>>>         <ma...@gmail.com>
>>>>>
>>>>>                          <mailto:sberyozkin@gmail.com
>>>>>         <ma...@gmail.com>>**>__> wrote:
>>>>>
>>>>>                                       Hi
>>>>>
>>>>>                                       On 05/09/13 20:09, David Hay wrote:
>>>>>
>>>>>                                           Hi,
>>>>>
>>>>>                                           I have a group of RESTful
>>>>>         endpoints
>>>>>                          that all require the
>>>>>                                           same
>>>>>                                           pre-validation (eg ensuring
>>>>>         that the
>>>>>                          related domain
>>>>>                                           object exists).
>>>>>
>>>>>                                           Is it possibly to set up an
>>>>>         interceptor
>>>>>                          that is somehow
>>>>>                                           configured to
>>>>>                                           perform such validation for a
>>>>>         set of
>>>>>                          methods/classes/urls?
>>>>>
>>>>>                                           If not, is there a suggested
>>>>>         way to
>>>>>                          accomplish this?
>>>>>
>>>>>                                       Starting from CXF 2.7.x you can
>>>>>         use JAX-RS
>>>>>                          2.0 NameBinding
>>>>>                                       to attach ContainerRequestFilter to
>>>>>                          individual methods or
>>>>>                                       classes, and the filters can also
>>>>>         check
>>>>>                          request URI and
>>>>>                                       ignore the validation if needed.
>>>>>
>>>>>                                       ContainerRequestFilter with a
>>>>>         @PreMatch
>>>>>                          annotation can be
>>>>>                                       used to do the validation before
>>>>>         the match
>>>>>                          has been done
>>>>>
>>>>>                                       Cheers, Sergey
>>>>>
>>>>>                                           thanks!
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>              --
>>>>>              Sergey Beryozkin
>>>>>
>>>>>              Talend Community Coders
>>>>>         http://coders.talend.com/
>>>>>
>>>>>              Blog: http://sberyozkin.blogspot.com
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>> --
>>> Sergey Beryozkin
>>>
>>> Talend Community Coders
>>> http://coders.talend.com/
>>>
>>> Blog: http://sberyozkin.blogspot.com
>>>
>
>


Re: Applying interceptor to only some methods

Posted by Mandy Warren <ma...@gmail.com>.
Hi David,

I asked a similar question not so long ago and Sergey sent me the following link which explained how to get exceptions from interceptors handled:

https://cwiki.apache.org/confluence/display/CXF20DOC/JAX-RS+Basics#JAX-RSBasics-MappingexceptionsthrownfromCXFinterceptors

Note you need to be using 2.7.8-SNAPSHOT to above to test this.

The Exception Mapper in 2.7.7 and earlier will only catch exceptions from your filters or from your application code.

FYI my full thread can be seen here:

http://cxf.547215.n5.nabble.com/Handling-exceptions-in-a-JAX-RS-fault-interceptor-when-using-Local-Transport-td5733958.html

Hope that helps

Mandy

On 11 Oct 2013, at 21:50, David Hay wrote:

> Hi Sergey,
> 
> Thanks, that worked with a custom Interceptor at Phase.PRE_INVOKE.
> 
> However, it looks like any exception I throw is NOT caught by my JAX-RS
> ExceptionMapper.
> 
> Is there any way to hook things up so that it is?
> 
> cheers,
> 
> David
> 
> 
> 
> On Wed, Oct 9, 2013 at 10:53 AM, Sergey Beryozkin <sb...@gmail.com>wrote:
> 
>> Or may be you can use Spring AOP for now if you work with Spring
>> 
>> Sergey
>> 
>> On 09/10/13 15:52, Sergey Beryozkin wrote:
>> 
>>> Hi
>>> On 09/10/13 15:18, David Hay wrote:
>>> 
>>>> Hi Sergey,
>>>> 
>>>> Yes, that worked by upgrading, thx.
>>>> 
>>>> So I am able to get the path params from URIInfo in the
>>>> ContainerRequestFilter, but I am also passing a single non-path
>>>> "command" parameter that encapsulates all the other params (passed as
>>>> JSON) and has a validate() method added to it.
>>>> 
>>>> I need to call that validate() method in the ContainerRequestFilter, but
>>>> can't see a way to grab the object.
>>>> 
>>>> The method signature is similar to:
>>>>    public Response doSomething(@PathParam("**pathParam1")long
>>>> pathParam1,
>>>> MyCmdObject myCmdObject)
>>>> 
>>>> Can you point me in the right direction, please, to access myCmdObject
>>>> in the filter?
>>>> 
>>>> Right, it is not possible to do it the portable way, I'm hoping JAX-RS
>>> will get it fixed somehow, in meantime, try either a custom invoker or
>>> regular CXF interceptor at the PRE-INVOKE phase, see:
>>> 
>>> https://issues.apache.org/**jira/browse/CXF-5309?**
>>> focusedCommentId=13789196&**page=com.atlassian.jira.**
>>> plugin.system.issuetabpanels:**comment-tabpanel#comment-**13789196<https://issues.apache.org/jira/browse/CXF-5309?focusedCommentId=13789196&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13789196>
>>> 
>>> 
>>> HTH, Sergey
>>> 
>>> cheers,
>>>> 
>>>> David
>>>> 
>>>> 
>>>> 
>>>> On Mon, Sep 30, 2013 at 12:15 PM, Sergey Beryozkin <sberyozkin@gmail.com
>>>> <ma...@gmail.com>> wrote:
>>>> 
>>>>    On 30/09/13 15:17, David Hay wrote:
>>>> 
>>>>        Voted.
>>>> 
>>>>        One more question - if I throw an exception from the
>>>>        ContainerRequestFilter, is there any way to get my
>>>>        ExceptionHandler to
>>>>        catch it?
>>>> 
>>>>    Do you mean JAX-RS ExceptionMapper ? Definitely has to work, in
>>>>    latest CXF 2.7.7 for sure
>>>> 
>>>>    Sergey
>>>> 
>>>> 
>>>> 
>>>> 
>>>>        On Sun, Sep 29, 2013 at 2:07 PM, Sergey Beryozkin
>>>>        <sberyozkin@gmail.com <ma...@gmail.com>
>>>>        <mailto:sberyozkin@gmail.com <ma...@gmail.com>>**>
>>>> wrote:
>>>> 
>>>>             Sorry,
>>>> 
>>>>        https://issues.apache.org/____**jira/browse/CXF-4199<https://issues.apache.org/____jira/browse/CXF-4199>
>>>>        <https://issues.apache.org/__**jira/browse/CXF-4199<https://issues.apache.org/__jira/browse/CXF-4199>
>>>>> 
>>>> 
>>>>             <https://issues.apache.org/__**jira/browse/CXF-4199<https://issues.apache.org/__jira/browse/CXF-4199>
>>>>        <https://issues.apache.org/**jira/browse/CXF-4199<https://issues.apache.org/jira/browse/CXF-4199>
>>>>>> 
>>>> 
>>>>             On 29/09/13 19:06, Sergey Beryozkin wrote:
>>>> 
>>>>                 Vote for this JIRA please...
>>>>                 Sergey
>>>>                 On 29/09/13 19:03, Sergey Beryozkin wrote:
>>>> 
>>>>                     Hi
>>>> 
>>>>                     I've tried it on the trunk & CXF 2.7.8-SNAPSHOT,
>>>>                     getPropertyNames does
>>>>                     not throw NPE and returns an initialized collection,
>>>> 
>>>>                     Get UriInfo from the context and check path
>>>>        parameters from it.
>>>> 
>>>>                     Re supporting @Provider - it is recognized, but no
>>>>                     auto-discovery is
>>>>                     done - I'm hoping to spend some time on it, many
>>>>        providers
>>>>                     do need to be
>>>>                     configured which the default auto-discovery would
>>>>        interfere
>>>>                     with, but I
>>>>                     agree for some simple providers it can make sense...
>>>> 
>>>>                     Sergey
>>>> 
>>>>                     On 27/09/13 20:51, David Hay wrote:
>>>> 
>>>>                         Hi again,
>>>> 
>>>>                         It appears that 'props' is null.
>>>> 
>>>>                         I'm trying to get hold of the path parameters.
>>>>          What's
>>>>                         the best way to
>>>>                         do that?
>>>> 
>>>> 
>>>>                         On Fri, Sep 27, 2013 at 3:32 PM, David Hay
>>>>                         <david.hay@enstratius.com
>>>>        <mailto:david.hay@enstratius.**com <da...@enstratius.com>>
>>>>        <mailto:david.hay@enstratius._**_com
>>>>        <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>
>>>>                         <mailto:david.hay@enstratius.
>>>>        <ma...@enstratius.>**____com
>>>> 
>>>>                         <mailto:david.hay@enstratius._**_com
>>>>        <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>>>
>>>> wrote:
>>>> 
>>>>                              Actually, I discovered that CXF doesn't
>>>>        support
>>>>                         @Provider yet?
>>>> 
>>>>                              I went ahead and registered it in CXF, and
>>>>        in the
>>>>                         filter tried to
>>>>                         do:
>>>> 
>>>>                                  Enumeration e =
>>>>                         requestContext.____**getPropertyNames();
>>>> 
>>>> 
>>>>                              However, I get this:
>>>> 
>>>>                                  <ns1:XMLFault
>>>> 
>>>>          xmlns:ns1="http://cxf.apache._**___org/bindings/xformat
>>>>                         <http://cxf.apache.org/__**bindings/xformat<http://cxf.apache.org/__bindings/xformat>
>>>>        <http://cxf.apache.org/**bindings/xformat<http://cxf.apache.org/bindings/xformat>
>>>>>> "><ns1:____**faultstring
>>>> 
>>>> 
>>>>        xmlns:ns1="http://cxf.apache._**___org/bindings/xformat
>>>>                         <http://cxf.apache.org/__**bindings/xformat<http://cxf.apache.org/__bindings/xformat>
>>>> 
>>>> <http://cxf.apache.org/**bindings/xformat<http://cxf.apache.org/bindings/xformat>
>>>>>> ">java.____**lang.NullPointerException</___**
>>>> _ns1:faultstring></ns1:____**XMLFault>*
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>>                              Thoughts?
>>>> 
>>>> 
>>>> 
>>>>                              On Fri, Sep 27, 2013 at 3:16 PM, David Hay
>>>>                         <david.hay@enstratius.com
>>>>        <mailto:david.hay@enstratius.**com <da...@enstratius.com>>
>>>>        <mailto:david.hay@enstratius._**_com
>>>>        <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>
>>>>                              <mailto:david.hay@enstratius.
>>>>        <ma...@enstratius.>**____com
>>>> 
>>>>                         <mailto:david.hay@enstratius._**_com
>>>>        <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>>>
>>>> wrote:
>>>> 
>>>>                                  Hi Sergey,
>>>> 
>>>>                                  I added a ContainerRequestFilter with
>>>>                         @Provider...but I don't
>>>>                                  see it getting called at all.
>>>> 
>>>>                                  What am I missing?
>>>> 
>>>> 
>>>>                                  On Fri, Sep 6, 2013 at 4:51 AM, Sergey
>>>>        Beryozkin
>>>>                                  <sberyozkin@gmail.com
>>>>        <ma...@gmail.com>
>>>>                         <mailto:sberyozkin@gmail.com
>>>>        <ma...@gmail.com>>
>>>>                         <mailto:sberyozkin@gmail.com
>>>>        <ma...@gmail.com>
>>>> 
>>>>                         <mailto:sberyozkin@gmail.com
>>>>        <ma...@gmail.com>>**>__> wrote:
>>>> 
>>>>                                      Hi
>>>> 
>>>>                                      On 05/09/13 20:09, David Hay wrote:
>>>> 
>>>>                                          Hi,
>>>> 
>>>>                                          I have a group of RESTful
>>>>        endpoints
>>>>                         that all require the
>>>>                                          same
>>>>                                          pre-validation (eg ensuring
>>>>        that the
>>>>                         related domain
>>>>                                          object exists).
>>>> 
>>>>                                          Is it possibly to set up an
>>>>        interceptor
>>>>                         that is somehow
>>>>                                          configured to
>>>>                                          perform such validation for a
>>>>        set of
>>>>                         methods/classes/urls?
>>>> 
>>>>                                          If not, is there a suggested
>>>>        way to
>>>>                         accomplish this?
>>>> 
>>>>                                      Starting from CXF 2.7.x you can
>>>>        use JAX-RS
>>>>                         2.0 NameBinding
>>>>                                      to attach ContainerRequestFilter to
>>>>                         individual methods or
>>>>                                      classes, and the filters can also
>>>>        check
>>>>                         request URI and
>>>>                                      ignore the validation if needed.
>>>> 
>>>>                                      ContainerRequestFilter with a
>>>>        @PreMatch
>>>>                         annotation can be
>>>>                                      used to do the validation before
>>>>        the match
>>>>                         has been done
>>>> 
>>>>                                      Cheers, Sergey
>>>> 
>>>>                                          thanks!
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>>             --
>>>>             Sergey Beryozkin
>>>> 
>>>>             Talend Community Coders
>>>>        http://coders.talend.com/
>>>> 
>>>>             Blog: http://sberyozkin.blogspot.com
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>> 
>>> 
>> 
>> --
>> Sergey Beryozkin
>> 
>> Talend Community Coders
>> http://coders.talend.com/
>> 
>> Blog: http://sberyozkin.blogspot.com
>> 


Re: Applying interceptor to only some methods

Posted by David Hay <da...@enstratius.com>.
Hi Sergey,

Thanks, that worked with a custom Interceptor at Phase.PRE_INVOKE.

However, it looks like any exception I throw is NOT caught by my JAX-RS
ExceptionMapper.

Is there any way to hook things up so that it is?

cheers,

David



On Wed, Oct 9, 2013 at 10:53 AM, Sergey Beryozkin <sb...@gmail.com>wrote:

> Or may be you can use Spring AOP for now if you work with Spring
>
> Sergey
>
> On 09/10/13 15:52, Sergey Beryozkin wrote:
>
>> Hi
>> On 09/10/13 15:18, David Hay wrote:
>>
>>> Hi Sergey,
>>>
>>> Yes, that worked by upgrading, thx.
>>>
>>> So I am able to get the path params from URIInfo in the
>>> ContainerRequestFilter, but I am also passing a single non-path
>>> "command" parameter that encapsulates all the other params (passed as
>>> JSON) and has a validate() method added to it.
>>>
>>> I need to call that validate() method in the ContainerRequestFilter, but
>>> can't see a way to grab the object.
>>>
>>> The method signature is similar to:
>>>     public Response doSomething(@PathParam("**pathParam1")long
>>> pathParam1,
>>> MyCmdObject myCmdObject)
>>>
>>> Can you point me in the right direction, please, to access myCmdObject
>>> in the filter?
>>>
>>>  Right, it is not possible to do it the portable way, I'm hoping JAX-RS
>> will get it fixed somehow, in meantime, try either a custom invoker or
>> regular CXF interceptor at the PRE-INVOKE phase, see:
>>
>> https://issues.apache.org/**jira/browse/CXF-5309?**
>> focusedCommentId=13789196&**page=com.atlassian.jira.**
>> plugin.system.issuetabpanels:**comment-tabpanel#comment-**13789196<https://issues.apache.org/jira/browse/CXF-5309?focusedCommentId=13789196&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13789196>
>>
>>
>> HTH, Sergey
>>
>>  cheers,
>>>
>>> David
>>>
>>>
>>>
>>> On Mon, Sep 30, 2013 at 12:15 PM, Sergey Beryozkin <sberyozkin@gmail.com
>>> <ma...@gmail.com>> wrote:
>>>
>>>     On 30/09/13 15:17, David Hay wrote:
>>>
>>>         Voted.
>>>
>>>         One more question - if I throw an exception from the
>>>         ContainerRequestFilter, is there any way to get my
>>>         ExceptionHandler to
>>>         catch it?
>>>
>>>     Do you mean JAX-RS ExceptionMapper ? Definitely has to work, in
>>>     latest CXF 2.7.7 for sure
>>>
>>>     Sergey
>>>
>>>
>>>
>>>
>>>         On Sun, Sep 29, 2013 at 2:07 PM, Sergey Beryozkin
>>>         <sberyozkin@gmail.com <ma...@gmail.com>
>>>         <mailto:sberyozkin@gmail.com <ma...@gmail.com>>**>
>>> wrote:
>>>
>>>              Sorry,
>>>
>>>         https://issues.apache.org/____**jira/browse/CXF-4199<https://issues.apache.org/____jira/browse/CXF-4199>
>>>         <https://issues.apache.org/__**jira/browse/CXF-4199<https://issues.apache.org/__jira/browse/CXF-4199>
>>> >
>>>
>>>              <https://issues.apache.org/__**jira/browse/CXF-4199<https://issues.apache.org/__jira/browse/CXF-4199>
>>>         <https://issues.apache.org/**jira/browse/CXF-4199<https://issues.apache.org/jira/browse/CXF-4199>
>>> >>
>>>
>>>              On 29/09/13 19:06, Sergey Beryozkin wrote:
>>>
>>>                  Vote for this JIRA please...
>>>                  Sergey
>>>                  On 29/09/13 19:03, Sergey Beryozkin wrote:
>>>
>>>                      Hi
>>>
>>>                      I've tried it on the trunk & CXF 2.7.8-SNAPSHOT,
>>>                      getPropertyNames does
>>>                      not throw NPE and returns an initialized collection,
>>>
>>>                      Get UriInfo from the context and check path
>>>         parameters from it.
>>>
>>>                      Re supporting @Provider - it is recognized, but no
>>>                      auto-discovery is
>>>                      done - I'm hoping to spend some time on it, many
>>>         providers
>>>                      do need to be
>>>                      configured which the default auto-discovery would
>>>         interfere
>>>                      with, but I
>>>                      agree for some simple providers it can make sense...
>>>
>>>                      Sergey
>>>
>>>                      On 27/09/13 20:51, David Hay wrote:
>>>
>>>                          Hi again,
>>>
>>>                          It appears that 'props' is null.
>>>
>>>                          I'm trying to get hold of the path parameters.
>>>           What's
>>>                          the best way to
>>>                          do that?
>>>
>>>
>>>                          On Fri, Sep 27, 2013 at 3:32 PM, David Hay
>>>                          <david.hay@enstratius.com
>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>
>>>         <mailto:david.hay@enstratius._**_com
>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>
>>>                          <mailto:david.hay@enstratius.
>>>         <ma...@enstratius.>**____com
>>>
>>>                          <mailto:david.hay@enstratius._**_com
>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>>>
>>> wrote:
>>>
>>>                               Actually, I discovered that CXF doesn't
>>>         support
>>>                          @Provider yet?
>>>
>>>                               I went ahead and registered it in CXF, and
>>>         in the
>>>                          filter tried to
>>>                          do:
>>>
>>>                                   Enumeration e =
>>>                          requestContext.____**getPropertyNames();
>>>
>>>
>>>                               However, I get this:
>>>
>>>                                   <ns1:XMLFault
>>>
>>>           xmlns:ns1="http://cxf.apache._**___org/bindings/xformat
>>>                          <http://cxf.apache.org/__**bindings/xformat<http://cxf.apache.org/__bindings/xformat>
>>>         <http://cxf.apache.org/**bindings/xformat<http://cxf.apache.org/bindings/xformat>
>>> >>"><ns1:____**faultstring
>>>
>>>
>>>         xmlns:ns1="http://cxf.apache._**___org/bindings/xformat
>>>                          <http://cxf.apache.org/__**bindings/xformat<http://cxf.apache.org/__bindings/xformat>
>>>
>>> <http://cxf.apache.org/**bindings/xformat<http://cxf.apache.org/bindings/xformat>
>>> >>">java.____**lang.NullPointerException</___**
>>> _ns1:faultstring></ns1:____**XMLFault>*
>>>
>>>
>>>
>>>
>>>
>>>                               Thoughts?
>>>
>>>
>>>
>>>                               On Fri, Sep 27, 2013 at 3:16 PM, David Hay
>>>                          <david.hay@enstratius.com
>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>
>>>         <mailto:david.hay@enstratius._**_com
>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>
>>>                               <mailto:david.hay@enstratius.
>>>         <ma...@enstratius.>**____com
>>>
>>>                          <mailto:david.hay@enstratius._**_com
>>>         <mailto:david.hay@enstratius.**com <da...@enstratius.com>>>>>
>>> wrote:
>>>
>>>                                   Hi Sergey,
>>>
>>>                                   I added a ContainerRequestFilter with
>>>                          @Provider...but I don't
>>>                                   see it getting called at all.
>>>
>>>                                   What am I missing?
>>>
>>>
>>>                                   On Fri, Sep 6, 2013 at 4:51 AM, Sergey
>>>         Beryozkin
>>>                                   <sberyozkin@gmail.com
>>>         <ma...@gmail.com>
>>>                          <mailto:sberyozkin@gmail.com
>>>         <ma...@gmail.com>>
>>>                          <mailto:sberyozkin@gmail.com
>>>         <ma...@gmail.com>
>>>
>>>                          <mailto:sberyozkin@gmail.com
>>>         <ma...@gmail.com>>**>__> wrote:
>>>
>>>                                       Hi
>>>
>>>                                       On 05/09/13 20:09, David Hay wrote:
>>>
>>>                                           Hi,
>>>
>>>                                           I have a group of RESTful
>>>         endpoints
>>>                          that all require the
>>>                                           same
>>>                                           pre-validation (eg ensuring
>>>         that the
>>>                          related domain
>>>                                           object exists).
>>>
>>>                                           Is it possibly to set up an
>>>         interceptor
>>>                          that is somehow
>>>                                           configured to
>>>                                           perform such validation for a
>>>         set of
>>>                          methods/classes/urls?
>>>
>>>                                           If not, is there a suggested
>>>         way to
>>>                          accomplish this?
>>>
>>>                                       Starting from CXF 2.7.x you can
>>>         use JAX-RS
>>>                          2.0 NameBinding
>>>                                       to attach ContainerRequestFilter to
>>>                          individual methods or
>>>                                       classes, and the filters can also
>>>         check
>>>                          request URI and
>>>                                       ignore the validation if needed.
>>>
>>>                                       ContainerRequestFilter with a
>>>         @PreMatch
>>>                          annotation can be
>>>                                       used to do the validation before
>>>         the match
>>>                          has been done
>>>
>>>                                       Cheers, Sergey
>>>
>>>                                           thanks!
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>              --
>>>              Sergey Beryozkin
>>>
>>>              Talend Community Coders
>>>         http://coders.talend.com/
>>>
>>>              Blog: http://sberyozkin.blogspot.com
>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>
> --
> Sergey Beryozkin
>
> Talend Community Coders
> http://coders.talend.com/
>
> Blog: http://sberyozkin.blogspot.com
>

Re: Applying interceptor to only some methods

Posted by Sergey Beryozkin <sb...@gmail.com>.
Or may be you can use Spring AOP for now if you work with Spring

Sergey
On 09/10/13 15:52, Sergey Beryozkin wrote:
> Hi
> On 09/10/13 15:18, David Hay wrote:
>> Hi Sergey,
>>
>> Yes, that worked by upgrading, thx.
>>
>> So I am able to get the path params from URIInfo in the
>> ContainerRequestFilter, but I am also passing a single non-path
>> "command" parameter that encapsulates all the other params (passed as
>> JSON) and has a validate() method added to it.
>>
>> I need to call that validate() method in the ContainerRequestFilter, but
>> can't see a way to grab the object.
>>
>> The method signature is similar to:
>>     public Response doSomething(@PathParam("pathParam1")long pathParam1,
>> MyCmdObject myCmdObject)
>>
>> Can you point me in the right direction, please, to access myCmdObject
>> in the filter?
>>
> Right, it is not possible to do it the portable way, I'm hoping JAX-RS
> will get it fixed somehow, in meantime, try either a custom invoker or
> regular CXF interceptor at the PRE-INVOKE phase, see:
>
> https://issues.apache.org/jira/browse/CXF-5309?focusedCommentId=13789196&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13789196
>
>
> HTH, Sergey
>
>> cheers,
>>
>> David
>>
>>
>>
>> On Mon, Sep 30, 2013 at 12:15 PM, Sergey Beryozkin <sberyozkin@gmail.com
>> <ma...@gmail.com>> wrote:
>>
>>     On 30/09/13 15:17, David Hay wrote:
>>
>>         Voted.
>>
>>         One more question - if I throw an exception from the
>>         ContainerRequestFilter, is there any way to get my
>>         ExceptionHandler to
>>         catch it?
>>
>>     Do you mean JAX-RS ExceptionMapper ? Definitely has to work, in
>>     latest CXF 2.7.7 for sure
>>
>>     Sergey
>>
>>
>>
>>
>>         On Sun, Sep 29, 2013 at 2:07 PM, Sergey Beryozkin
>>         <sberyozkin@gmail.com <ma...@gmail.com>
>>         <mailto:sberyozkin@gmail.com <ma...@gmail.com>>>
>> wrote:
>>
>>              Sorry,
>>
>>         https://issues.apache.org/____jira/browse/CXF-4199
>>         <https://issues.apache.org/__jira/browse/CXF-4199>
>>
>>              <https://issues.apache.org/__jira/browse/CXF-4199
>>         <https://issues.apache.org/jira/browse/CXF-4199>>
>>
>>              On 29/09/13 19:06, Sergey Beryozkin wrote:
>>
>>                  Vote for this JIRA please...
>>                  Sergey
>>                  On 29/09/13 19:03, Sergey Beryozkin wrote:
>>
>>                      Hi
>>
>>                      I've tried it on the trunk & CXF 2.7.8-SNAPSHOT,
>>                      getPropertyNames does
>>                      not throw NPE and returns an initialized collection,
>>
>>                      Get UriInfo from the context and check path
>>         parameters from it.
>>
>>                      Re supporting @Provider - it is recognized, but no
>>                      auto-discovery is
>>                      done - I'm hoping to spend some time on it, many
>>         providers
>>                      do need to be
>>                      configured which the default auto-discovery would
>>         interfere
>>                      with, but I
>>                      agree for some simple providers it can make sense...
>>
>>                      Sergey
>>
>>                      On 27/09/13 20:51, David Hay wrote:
>>
>>                          Hi again,
>>
>>                          It appears that 'props' is null.
>>
>>                          I'm trying to get hold of the path parameters.
>>           What's
>>                          the best way to
>>                          do that?
>>
>>
>>                          On Fri, Sep 27, 2013 at 3:32 PM, David Hay
>>                          <david.hay@enstratius.com
>>         <ma...@enstratius.com>
>>         <mailto:david.hay@enstratius.__com
>>         <ma...@enstratius.com>>
>>                          <mailto:david.hay@enstratius.
>>         <ma...@enstratius.>____com
>>
>>                          <mailto:david.hay@enstratius.__com
>>         <ma...@enstratius.com>>>> wrote:
>>
>>                               Actually, I discovered that CXF doesn't
>>         support
>>                          @Provider yet?
>>
>>                               I went ahead and registered it in CXF, and
>>         in the
>>                          filter tried to
>>                          do:
>>
>>                                   Enumeration e =
>>                          requestContext.____getPropertyNames();
>>
>>
>>                               However, I get this:
>>
>>                                   <ns1:XMLFault
>>
>>           xmlns:ns1="http://cxf.apache.____org/bindings/xformat
>>                          <http://cxf.apache.org/__bindings/xformat
>>         <http://cxf.apache.org/bindings/xformat>>"><ns1:____faultstring
>>
>>
>>         xmlns:ns1="http://cxf.apache.____org/bindings/xformat
>>                          <http://cxf.apache.org/__bindings/xformat
>>
>> <http://cxf.apache.org/bindings/xformat>>">java.____lang.NullPointerException</____ns1:faultstring></ns1:____XMLFault>*
>>
>>
>>
>>
>>
>>                               Thoughts?
>>
>>
>>
>>                               On Fri, Sep 27, 2013 at 3:16 PM, David Hay
>>                          <david.hay@enstratius.com
>>         <ma...@enstratius.com>
>>         <mailto:david.hay@enstratius.__com
>>         <ma...@enstratius.com>>
>>                               <mailto:david.hay@enstratius.
>>         <ma...@enstratius.>____com
>>
>>                          <mailto:david.hay@enstratius.__com
>>         <ma...@enstratius.com>>>> wrote:
>>
>>                                   Hi Sergey,
>>
>>                                   I added a ContainerRequestFilter with
>>                          @Provider...but I don't
>>                                   see it getting called at all.
>>
>>                                   What am I missing?
>>
>>
>>                                   On Fri, Sep 6, 2013 at 4:51 AM, Sergey
>>         Beryozkin
>>                                   <sberyozkin@gmail.com
>>         <ma...@gmail.com>
>>                          <mailto:sberyozkin@gmail.com
>>         <ma...@gmail.com>>
>>                          <mailto:sberyozkin@gmail.com
>>         <ma...@gmail.com>
>>
>>                          <mailto:sberyozkin@gmail.com
>>         <ma...@gmail.com>>>__> wrote:
>>
>>                                       Hi
>>
>>                                       On 05/09/13 20:09, David Hay wrote:
>>
>>                                           Hi,
>>
>>                                           I have a group of RESTful
>>         endpoints
>>                          that all require the
>>                                           same
>>                                           pre-validation (eg ensuring
>>         that the
>>                          related domain
>>                                           object exists).
>>
>>                                           Is it possibly to set up an
>>         interceptor
>>                          that is somehow
>>                                           configured to
>>                                           perform such validation for a
>>         set of
>>                          methods/classes/urls?
>>
>>                                           If not, is there a suggested
>>         way to
>>                          accomplish this?
>>
>>                                       Starting from CXF 2.7.x you can
>>         use JAX-RS
>>                          2.0 NameBinding
>>                                       to attach ContainerRequestFilter to
>>                          individual methods or
>>                                       classes, and the filters can also
>>         check
>>                          request URI and
>>                                       ignore the validation if needed.
>>
>>                                       ContainerRequestFilter with a
>>         @PreMatch
>>                          annotation can be
>>                                       used to do the validation before
>>         the match
>>                          has been done
>>
>>                                       Cheers, Sergey
>>
>>                                           thanks!
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>              --
>>              Sergey Beryozkin
>>
>>              Talend Community Coders
>>         http://coders.talend.com/
>>
>>              Blog: http://sberyozkin.blogspot.com
>>
>>
>>
>>
>>
>
>


-- 
Sergey Beryozkin

Talend Community Coders
http://coders.talend.com/

Blog: http://sberyozkin.blogspot.com

Re: Applying interceptor to only some methods

Posted by Sergey Beryozkin <sb...@gmail.com>.
Hi
On 09/10/13 15:18, David Hay wrote:
> Hi Sergey,
>
> Yes, that worked by upgrading, thx.
>
> So I am able to get the path params from URIInfo in the
> ContainerRequestFilter, but I am also passing a single non-path
> "command" parameter that encapsulates all the other params (passed as
> JSON) and has a validate() method added to it.
>
> I need to call that validate() method in the ContainerRequestFilter, but
> can't see a way to grab the object.
>
> The method signature is similar to:
>     public Response doSomething(@PathParam("pathParam1")long pathParam1,
> MyCmdObject myCmdObject)
>
> Can you point me in the right direction, please, to access myCmdObject
> in the filter?
>
Right, it is not possible to do it the portable way, I'm hoping JAX-RS 
will get it fixed somehow, in meantime, try either a custom invoker or 
regular CXF interceptor at the PRE-INVOKE phase, see:

https://issues.apache.org/jira/browse/CXF-5309?focusedCommentId=13789196&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13789196

HTH, Sergey

> cheers,
>
> David
>
>
>
> On Mon, Sep 30, 2013 at 12:15 PM, Sergey Beryozkin <sberyozkin@gmail.com
> <ma...@gmail.com>> wrote:
>
>     On 30/09/13 15:17, David Hay wrote:
>
>         Voted.
>
>         One more question - if I throw an exception from the
>         ContainerRequestFilter, is there any way to get my
>         ExceptionHandler to
>         catch it?
>
>     Do you mean JAX-RS ExceptionMapper ? Definitely has to work, in
>     latest CXF 2.7.7 for sure
>
>     Sergey
>
>
>
>
>         On Sun, Sep 29, 2013 at 2:07 PM, Sergey Beryozkin
>         <sberyozkin@gmail.com <ma...@gmail.com>
>         <mailto:sberyozkin@gmail.com <ma...@gmail.com>>> wrote:
>
>              Sorry,
>
>         https://issues.apache.org/____jira/browse/CXF-4199
>         <https://issues.apache.org/__jira/browse/CXF-4199>
>
>              <https://issues.apache.org/__jira/browse/CXF-4199
>         <https://issues.apache.org/jira/browse/CXF-4199>>
>
>              On 29/09/13 19:06, Sergey Beryozkin wrote:
>
>                  Vote for this JIRA please...
>                  Sergey
>                  On 29/09/13 19:03, Sergey Beryozkin wrote:
>
>                      Hi
>
>                      I've tried it on the trunk & CXF 2.7.8-SNAPSHOT,
>                      getPropertyNames does
>                      not throw NPE and returns an initialized collection,
>
>                      Get UriInfo from the context and check path
>         parameters from it.
>
>                      Re supporting @Provider - it is recognized, but no
>                      auto-discovery is
>                      done - I'm hoping to spend some time on it, many
>         providers
>                      do need to be
>                      configured which the default auto-discovery would
>         interfere
>                      with, but I
>                      agree for some simple providers it can make sense...
>
>                      Sergey
>
>                      On 27/09/13 20:51, David Hay wrote:
>
>                          Hi again,
>
>                          It appears that 'props' is null.
>
>                          I'm trying to get hold of the path parameters.
>           What's
>                          the best way to
>                          do that?
>
>
>                          On Fri, Sep 27, 2013 at 3:32 PM, David Hay
>                          <david.hay@enstratius.com
>         <ma...@enstratius.com>
>         <mailto:david.hay@enstratius.__com
>         <ma...@enstratius.com>>
>                          <mailto:david.hay@enstratius.
>         <ma...@enstratius.>____com
>
>                          <mailto:david.hay@enstratius.__com
>         <ma...@enstratius.com>>>> wrote:
>
>                               Actually, I discovered that CXF doesn't
>         support
>                          @Provider yet?
>
>                               I went ahead and registered it in CXF, and
>         in the
>                          filter tried to
>                          do:
>
>                                   Enumeration e =
>                          requestContext.____getPropertyNames();
>
>
>                               However, I get this:
>
>                                   <ns1:XMLFault
>
>           xmlns:ns1="http://cxf.apache.____org/bindings/xformat
>                          <http://cxf.apache.org/__bindings/xformat
>         <http://cxf.apache.org/bindings/xformat>>"><ns1:____faultstring
>
>
>         xmlns:ns1="http://cxf.apache.____org/bindings/xformat
>                          <http://cxf.apache.org/__bindings/xformat
>         <http://cxf.apache.org/bindings/xformat>>">java.____lang.NullPointerException</____ns1:faultstring></ns1:____XMLFault>*
>
>
>
>
>                               Thoughts?
>
>
>
>                               On Fri, Sep 27, 2013 at 3:16 PM, David Hay
>                          <david.hay@enstratius.com
>         <ma...@enstratius.com>
>         <mailto:david.hay@enstratius.__com
>         <ma...@enstratius.com>>
>                               <mailto:david.hay@enstratius.
>         <ma...@enstratius.>____com
>
>                          <mailto:david.hay@enstratius.__com
>         <ma...@enstratius.com>>>> wrote:
>
>                                   Hi Sergey,
>
>                                   I added a ContainerRequestFilter with
>                          @Provider...but I don't
>                                   see it getting called at all.
>
>                                   What am I missing?
>
>
>                                   On Fri, Sep 6, 2013 at 4:51 AM, Sergey
>         Beryozkin
>                                   <sberyozkin@gmail.com
>         <ma...@gmail.com>
>                          <mailto:sberyozkin@gmail.com
>         <ma...@gmail.com>>
>                          <mailto:sberyozkin@gmail.com
>         <ma...@gmail.com>
>
>                          <mailto:sberyozkin@gmail.com
>         <ma...@gmail.com>>>__> wrote:
>
>                                       Hi
>
>                                       On 05/09/13 20:09, David Hay wrote:
>
>                                           Hi,
>
>                                           I have a group of RESTful
>         endpoints
>                          that all require the
>                                           same
>                                           pre-validation (eg ensuring
>         that the
>                          related domain
>                                           object exists).
>
>                                           Is it possibly to set up an
>         interceptor
>                          that is somehow
>                                           configured to
>                                           perform such validation for a
>         set of
>                          methods/classes/urls?
>
>                                           If not, is there a suggested
>         way to
>                          accomplish this?
>
>                                       Starting from CXF 2.7.x you can
>         use JAX-RS
>                          2.0 NameBinding
>                                       to attach ContainerRequestFilter to
>                          individual methods or
>                                       classes, and the filters can also
>         check
>                          request URI and
>                                       ignore the validation if needed.
>
>                                       ContainerRequestFilter with a
>         @PreMatch
>                          annotation can be
>                                       used to do the validation before
>         the match
>                          has been done
>
>                                       Cheers, Sergey
>
>                                           thanks!
>
>
>
>
>
>
>
>
>
>
>
>              --
>              Sergey Beryozkin
>
>              Talend Community Coders
>         http://coders.talend.com/
>
>              Blog: http://sberyozkin.blogspot.com
>
>
>
>
>