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

Andriy Redko updated CXF-8574:
------------------------------
    Affects Version/s: 3.4.4

> 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
>            Reporter: Jürgen Happe
>            Priority: Major
>
> 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)

Reply via email to