You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Frank Denninger (Jira)" <ji...@apache.org> on 2020/08/04 20:06:00 UTC
[jira] [Updated] (CAMEL-15370) CxfRsProducer: All but last value of
query parameter with multiple values are lost
[ https://issues.apache.org/jira/browse/CAMEL-15370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Frank Denninger updated CAMEL-15370:
------------------------------------
Description:
If using a query parameter name multiple times, only the last value is actually used.
e.g. .to("cxfrs:[http://example.com/]") with Exchange value Exchange.HTTP_QUERY id=1&id=2 will call to example.com with id=2
As far as i can tell the problem is caused by CxfRsProducer::getQueryParametersFromQueryString. In the method all query paramters are inserted in a map, and only the last use of a parameter name is preserved.
One solution would be to insert the values directy into the client field, skipping the Map.
was:
If using a query parameter name multiple times, only the last value is actually used.
e.g. .to("cxfrs:http://example.com/") with Exchange value Exchange.HTTP_QUERY id=1&id=2 will call to example.com with id=2
As far as i can tell the problem is caused by CxfRsProducer::getQueryParametersFromQueryString. In the method all query paramters are inserted in a map, and only the last use of a parameter name is preserved.
One solution would be to insert the values directy into the client variable and skiping the Map.
> CxfRsProducer: All but last value of query parameter with multiple values are lost
> ----------------------------------------------------------------------------------
>
> Key: CAMEL-15370
> URL: https://issues.apache.org/jira/browse/CAMEL-15370
> Project: Camel
> Issue Type: Bug
> Components: came-cxf
> Affects Versions: 3.3.0
> Reporter: Frank Denninger
> Priority: Major
>
> If using a query parameter name multiple times, only the last value is actually used.
>
> e.g. .to("cxfrs:[http://example.com/]") with Exchange value Exchange.HTTP_QUERY id=1&id=2 will call to example.com with id=2
>
> As far as i can tell the problem is caused by CxfRsProducer::getQueryParametersFromQueryString. In the method all query paramters are inserted in a map, and only the last use of a parameter name is preserved.
>
> One solution would be to insert the values directy into the client field, skipping the Map.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)