You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2015/09/24 21:29:04 UTC

[jira] [Commented] (CXF-6606) Encoded characters in URI are decoded multiple times during preprocess

    [ https://issues.apache.org/jira/browse/CXF-6606?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14906871#comment-14906871 ] 

ASF GitHub Bot commented on CXF-6606:
-------------------------------------

GitHub user tylerbrazier opened a pull request:

    https://github.com/apache/cxf/pull/91

    CXF-6606 Encoded characters in URI are decoded multiple times during …

    …preprocess

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/tylerbrazier/cxf master

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/cxf/pull/91.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #91
    
----
commit 55860e078bd923b6e2ad85dbc410faad647c6998
Author: Tyler Brazier <ty...@tylerbrazier.com>
Date:   2015-09-24T19:26:30Z

    CXF-6606 Encoded characters in URI are decoded multiple times during preprocess

----


> Encoded characters in URI are decoded multiple times during preprocess
> ----------------------------------------------------------------------
>
>                 Key: CXF-6606
>                 URL: https://issues.apache.org/jira/browse/CXF-6606
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS
>    Affects Versions: 3.1.2
>            Reporter: Tyler Brazier
>
> When given a url like {{/api/%255E/users.json}}, {{RequestPreprocessor#preprocess}} first does {{handleExtensionMappings}}, which creates a {{PathSegmentImpl}} with a single arg constructor, decoding the path. The path on {{Message}} is set to the decoded path with a call to {{updatePath}} if the {{.json}} extension was found within the extension mappings. Back in {{RequestPreprocessor#preprocess}}, the path returned will be decoded again within the call to {{UriInfoImpl#getPath}}.
> This causes the {{%255E}} in the path to be decoded the first time as {{%5E}}, then the second time as {{^}}.
> I believe this could be fixed by constructing {{PathSegment}} within {{handleLanguageMappings}} and {{handleExtensionMappings}} with a second {{false}} argument.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)