You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Andriy Redko (Jira)" <ji...@apache.org> on 2021/08/07 02:17:00 UTC

[jira] [Resolved] (CXF-8574) Rest call on jax-rs interface with long @Path and 3 pathparams causes error since cxf-rt-rs-mp-client 3.3.3

     [ https://issues.apache.org/jira/browse/CXF-8574?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andriy Redko resolved CXF-8574.
-------------------------------
    Resolution: Fixed

> Rest call on jax-rs interface with long @Path and 3 pathparams causes error since cxf-rt-rs-mp-client 3.3.3
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-8574
>                 URL: https://issues.apache.org/jira/browse/CXF-8574
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS, MicroProfile
>    Affects Versions: 3.4.4, 3.3.11
>            Reporter: Jürgen Happe
>            Assignee: Andriy Redko
>            Priority: Major
>             Fix For: 3.3.12, 3.4.5, 3.5.0
>
>
> We have a jax-rs interface in our backend application that has a very long @Path Annotation with 3 "pathparams".
> Since we switched to cxf-rt-rs-mp-client in the lastest version (3.4.4) i am are getting the following error, wenn calling this interface from a UI-Client:
>  
> {code:java}
> [INFO] java.lang.IllegalArgumentException: Unresolved variables; only 2 value(s) given for 3 unique variable(s)[INFO] java.lang.IllegalArgumentException: Unresolved variables; only 2 value(s) given for 3 unique variable(s)[INFO]  at org.apache.cxf.jaxrs.impl.UriBuilderImpl.substituteVarargs(UriBuilderImpl.java:301) ~[cxf-rt-frontend-jaxrs-3.4.4.jar:3.4.4][INFO]  at org.apache.cxf.jaxrs.impl.UriBuilderImpl.doBuildUriParts(UriBuilderImpl.java:136) ~[cxf-rt-frontend-jaxrs-3.4.4.jar:3.4.4][INFO]  at org.apache.cxf.jaxrs.impl.UriBuilderImpl.doBuild(UriBuilderImpl.java:116) ~[cxf-rt-frontend-jaxrs-3.4.4.jar:3.4.4][INFO]  at org.apache.cxf.jaxrs.impl.UriBuilderImpl.buildFromEncoded(UriBuilderImpl.java:245) ~[cxf-rt-frontend-jaxrs-3.4.4.jar:3.4.4][INFO]  at org.apache.cxf.jaxrs.client.ClientProxyImpl.invoke(ClientProxyImpl.java:298) ~[cxf-rt-rs-client-3.4.4.jar:3.4.4][INFO]  at org.apache.cxf.microprofile.client.proxy.MicroProfileClientProxyImpl.invokeActual(MicroProfileClientProxyImpl.java:491) ~[cxf-rt-rs-mp-client-3.4.4.jar:3.4.4][INFO]  at org.apache.cxf.microprofile.client.proxy.MicroProfileClientProxyImpl.access$000(MicroProfileClientProxyImpl.java:76) ~[cxf-rt-rs-mp-client-3.4.4.jar:3.4.4][INFO]  at org.apache.cxf.microprofile.client.proxy.MicroProfileClientProxyImpl$Invoker.call(MicroProfileClientProxyImpl.java:510) ~[cxf-rt-rs-mp-client-3.4.4.jar:3.4.4][INFO]  at org.apache.cxf.microprofile.client.cdi.CDIInterceptorWrapper$BasicCDIInterceptorWrapper.invoke(CDIInterceptorWrapper.java:43) ~[cxf-rt-rs-mp-client-3.4.4.jar:3.4.4][INFO]  at org.apache.cxf.microprofile.client.proxy.MicroProfileClientProxyImpl.invoke(MicroProfileClientProxyImpl.java:487) ~[cxf-rt-rs-mp-client-3.4.4.jar:3.4.4][INFO]  at com.sun.proxy.$Proxy84.read(Unknown Source) ~[?:?][INFO]  at
> ...{code}
>  
> The error is caused when calling an interface similar to this one:
>  
> {code:java}
> @Path("v2/foobar/wkxnkxd/{pkmrvQocwkxnkxdXewwob}/kudsyxckxqolyd/{kudkxqolydEesn}/kudsyxckbdsuov/{kudkbdsuovEesn}/jsovwoxqox")
> public interface Foobar {    
>     @POST
>     @Path(":boknLiZycd")
>     @Consumes(MediaType.APPLICATION_JSON)
>     @Produces(MediaType.APPLICATION_JSON)
>     public ZielmengenKopfComposedDto read(
>         @PathParam("pkmrvQocwkxnkxdXewwob") int pkmrvQocwkxnkxdXewwob,
>         @PathParam("kudkxqolydEesn") String kudkxqolydEesn,
>         @PathParam("kudkbdsuovEesn") String kudkbdsuovEesn,
>         @QueryParam("sxnecdbsozkbdxob") KluywwoxUoiNdy  sxnecdbsozkbdxobUoi,
>         GosmroMywzyconBoaeocdNdy request);}
> }{code}
> I could figure out that this happens since version 3.3.3. Version 3.3.2 still works.
> I hope this is enough information to reproduce and fix the problem. I can't give you all the original code because i don't own it.
> Thank you.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)