cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sergey Beryozkin (JIRA)" <>
Subject [jira] [Commented] (CXF-4861) Encoding issue jax-rs - UriBuilder
Date Fri, 01 Mar 2013 14:11:12 GMT


Sergey Beryozkin commented on CXF-4861:

Thanks Aki - so the proposed workaround to get "{dummyStickToken}" passed over is to pre-encode
it and then use buildFromEncoded call is actually what needs to be done - this will avoid
a double '%' encoding. A minor fix to UriBuilder to ensure IAE is thrown needs to be done
in meantime.
Note a test exists for a case where at least two template values are provided but not all
have been substituted via build or buildFromEncoded, but some buggy optimization in UriBuilder
implementation misses on a case where only a single query template var is provided and left
non-substituted - and it already works as expected for path segment variables

> Encoding issue jax-rs - UriBuilder
> ----------------------------------
>                 Key: CXF-4861
>                 URL:
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.6, 2.7.0
>            Reporter: Stephan Klevenz
> Use Case: OData ( / odata4j (
> Building an URI based on OData query parameter:
> URI called by http client: .../Employees?$filter=startswith(CarrierId,'A')
> URI build on server:
> String nextHref = uriInfo.getRequestUriBuilder().replaceQueryParam("$skiptoken", "{dummySkipToken}").build().toString();
> Result is:
> /Employees?$filter=startswith%2528CarrierId%252C%2527A%2527%2529&$skiptoken=%7BdummySkipToken%7D
> The value of query parameter $filter is encoded twice. The issue is in the embrasing
{} of the value of the $skiptoken query parameter.
> CXF does a partial encoding of the first query parameter which succeeds and then gets
a UriSyntaxException for the 2nd query parameter. After that it falls back and encodes the
whole URI while the 1st query option is already encoded.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message