-
Bug
-
Resolution: Done
-
Major
-
3.11.1.Final, 4.5.3.Final
-
None
-
None
I'm working on Eclipse Krazo, the RI for JSR 371. During development, we recognized that RESTEasy shows a different behavior than other JAX-RS implementations on inherited controllers (https://github.com/eclipse-ee4j/krazo/issues/29). This leads to a not working inheritance check on MVC controllers in
org.eclipse.krazo.core.ViewResponseFilter#filter
, where we access
ResourceInfo#getResourceMethod
and
ResourceInfo#getResourceClass
After a lot of debugging we figured out that the `ResourceInfo`, which is provided by RESTEasy, doesn't contain the sub-class method
org.eclipse.krazo.test.annotations.AnnotationsController#methodNoOverrideMvc
which is really invoked by the client. Instead, we receive the base class method
org.eclipse.krazo.test.annotations.BaseController#methodNoOverrideMvc
on which the inheritance checks fail, because nothing is inherited there:
2019-10-23 18:11:41,215 FINE [org.eclipse.krazo.test.annotations.AnnotationsController] (default task-1) Executing AnnotationsController#methodNoOverrideMvc 2019-10-23 18:11:41,215 FINE [org.eclipse.krazo.core.ViewResponseFilter] (default task-1) Filter response for controller: org.eclipse.krazo.test.annotations.BaseController#methodNoOverrideMvc
Because the `ResourceInfo` JavaDoc says it is
An injectable class to access the resource class and resource method matched by the current request
, the described behavior seems like a bug to us, as the really requested method is not accessible by the `ResourceInfo`.
- causes
-
RESTEASY-3111 @Cache annotation ignored when not set on the implementation itself
- Resolved