cxf-issues mailing list archives

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


Aki Yoshida commented on CXF-4861:

I chatted with sergey. It appears the assumption above was wrong. 

The spec talks about an IAE in this case:

public abstract build(java.lang.Object... values)
                            throws java.lang.IllegalArgumentException,
java.lang.IllegalArgumentException - if there are any URI template parameters without a supplied
value, or if a value is null.
UriBuilderException - if a URI cannot be constructed based on the current state of the builder.

> 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