You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "MIchail Nikolaev (JIRA)" <ji...@apache.org> on 2014/05/30 18:09:02 UTC

[jira] [Created] (CXF-5776) @PathParam not works inside @BeanParam

MIchail Nikolaev created CXF-5776:
-------------------------------------

             Summary: @PathParam not works inside @BeanParam
                 Key: CXF-5776
                 URL: https://issues.apache.org/jira/browse/CXF-5776
             Project: CXF
          Issue Type: Bug
          Components: JAX-WS Runtime
    Affects Versions: 2.7.11
            Reporter: MIchail Nikolaev
            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)