cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sergey Beryozkin (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CXF-5776) @PathParam not works inside @BeanParam
Date Tue, 03 Jun 2014 16:17:01 GMT

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

Sergey Beryozkin commented on CXF-5776:
---------------------------------------

Indeed, the original issue description did not help, the last code example where you have
PathParam specified twice does not help either :-).

OK. We have 3 cases not working. Case "not_works_1" is out of scope for this JIRA, watch https://issues.apache.org/jira/browse/CXF-5771
on getting fields without setters supported.
Cases "not_works_2" and "not_works_3" are the cases to do with the issue where CXF expected
that the property name derived from a setter method completely matches the parameter name.
This was fixed in CXF 2.7.12 - can you confirm please it works for 2.7.12 ?

> @PathParam not works inside @BeanParam
> --------------------------------------
>
>                 Key: CXF-5776
>                 URL: https://issues.apache.org/jira/browse/CXF-5776
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS
>    Affects Versions: 2.7.11
>            Reporter: MIchail Nikolaev
>            Assignee: Sergey Beryozkin
>            Priority: Minor
>
> Check line:
> https://fisheye6.atlassian.com/browse/~br=2.7.x-fixes/cxf/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/client/ClientProxyImpl.java?r=3248da800fdf25f5bd962b962b7ff2d9d98cd225#to485
> Error in the snippet
> {code}
>  m.getParameterAnnotations()[0]
> {code}
> - for some reason you get first annotation from *parameter* of the method (setter?).
> So, to make it worked I need to use such workaround:
> {code}
>     @PathParam("identity")
>     public void setIdentity(@Nonnull @PathParam("identity") Identity identity) {
>         this.identity = identity;
>     }
> {code}
> Probably you need to call _getter.getAnnotation(anClass)_ to allow such properties to
work (it worked in 2.7.9 as far as I remember):
> {code}
>     public void setIdentity(@Nonnull Identity identity) {
>         this.identity = identity;
>     }
>     @PathParam("identity")
>     @Nonnull
>     public Identity getIdentity() {
>         return identity;
>     }
> {code}
> Also, it is better to catch Exception instead of Throwable.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message