[ https://issues.apache.org/jira/browse/CXF-6917?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15298802#comment-15298802 ]
Sergey Beryozkin commented on CXF-6917: --------------------------------------- Well this is not the first time users have come across it. But IMHO it is actually not a good idea to have REST API enablers (annotations) spread around the class hierarchy and I agree with the spec completely here. In a pure Java land it would be like having a contract partially represented in the interface and the impl, with the impl passed around. If one has the interface to represent the resource methods then why duplicate some of the annotations on the impl level ? Thanks > SuperClass and Interface's Annotations are ignored when the Method contains > ParameterAnnotation > ----------------------------------------------------------------------------------------------- > > Key: CXF-6917 > URL: https://issues.apache.org/jira/browse/CXF-6917 > Project: CXF > Issue Type: Bug > Components: JAX-RS > Affects Versions: 3.1.6 > Environment: Mac java 8 > Reporter: Neal Hu > Fix For: 3.0.10, 3.2.0, 3.1.8 > > > Suppose we have below interface and its implementation: > public interface HelloWorld { > @GET > @Path("/hello") > String sayHello(@QueryParam("name") String name); > @GET > @Path("/hello3") > String sayHello3(); > } > @Path("/") > public class HelloWorldImpl implements HelloWorld { > @Override > public String sayHello(@QueryParam("name") String name){ > return "hello " + name; > } > @GET > @Path("/hello2") > public String sayHello2(@QueryParam("name") String name){ > return "hello2 " + name; > } > @Override > public String sayHello3(){ > return "hello3 "; > } > } > Get /hello3 works good. but Get /hello?name=neal will result in 404. The > expected output is hello neal. > The root cause is in org.apache.cxf.jaxrs.utils.AnnotationUtils:167 CXF > ignores the recurrence search of the method who has parameter annotations. -- This message was sent by Atlassian JIRA (v6.3.4#6332)