Robert DiFalco
2014-04-29 18:51:06 UTC
Is there a way to access the Resource method that will be called in a
ContainerRequestFilter? I have a scenario where I want Basic Authentication
on my REST API. This was a very simple filter to write. However, there are
some methods that I want to be unauthenticated.
My naive approach was to create an annotation @Unauthenticated that I could
either put on a Resource at the class or method level. Then in my filter I
could see if this annotation exists and if it does skip my Basic API
authentication.
Unfortunately, while I *can* figure out how to get the resource object in
the filter by calling 'requestCtx.getUriInfo().getMatchedResources()' I can
*NOT* figure out how to get the method that is going to be invoked.
So I can check for annotations at the class level but I cannot figure out
how to check for them at the method level. Any guidance would be greatly
appreciated!
ContainerRequestFilter? I have a scenario where I want Basic Authentication
on my REST API. This was a very simple filter to write. However, there are
some methods that I want to be unauthenticated.
My naive approach was to create an annotation @Unauthenticated that I could
either put on a Resource at the class or method level. Then in my filter I
could see if this annotation exists and if it does skip my Basic API
authentication.
Unfortunately, while I *can* figure out how to get the resource object in
the filter by calling 'requestCtx.getUriInfo().getMatchedResources()' I can
*NOT* figure out how to get the method that is going to be invoked.
So I can check for annotations at the class level but I cannot figure out
how to check for them at the method level. Any guidance would be greatly
appreciated!