julien Bordeneuve created CXF-5858:
--------------------------------------
Summary: WebClient using GET with complex query param object :
IllegalArgumentException: Unresolved variables; only 0 value(s) given for 1
unique variable(s)
Key: CXF-5858
URL: https://issues.apache.org/jira/browse/CXF-5858
Project: CXF
Issue Type: Bug
Affects Versions: 3.0.0, 2.7.11
Reporter: julien Bordeneuve
Hi,
I use the CXF WebClient to GET a message to a server with a complex query ,
this code work on CXF 2.5.x but after a complete version upgrade to CXF 3.0.0
(also try on 2.7.11). I obtain this exception IllegalArgumentException:
Unresolved variables; only 0 value(s) given for 1 unique variable(s).
It seems have a problem when the URITemplate is contruct, the number is not the
well.
client side :
"
final List<Object> providers = new ArrayList<Object>();
providers.add(new JacksonJaxbJsonProvider());
// providers.add(new ParamConverterProviderImpl());
WebClient client = WebClient.create(
"http://localhost:8090/rest-cxf_v2.7.11/API/REST/POC/", providers);
client =
client.accept("application/json").type("application/json")
.path("/bookingServices/getHotelByCriteria");
client.resetQuery();
final Criteria criteria = new Criteria();
criteria.setDestination("Paris");
criteria.setArrivalDate("20/11/2014");
criteria.setNbNight("2");
criteria.setNbAdult("1");
criteria.setNbChild("2");
criteria.setNbRoom("1");
client.query("criteria", criteria);
client.getCurrentURI();
@SuppressWarnings("unchecked")
final List<Hotel> hotels = (List<Hotel>) client
.getCollection(Hotel.class);
assertThat(hotels).isNotNull();
}
"
server side :
@GET
@Consumes({ MediaType.APPLICATION_JSON })
@Produces({ MediaType.APPLICATION_JSON })
@Path("/getHotelByCriteria")
public List<Hotel> getHotelByCriteria (@QueryParam("criteria") final
Criteria criteria)
{
}
--
This message was sent by Atlassian JIRA
(v6.2#6252)