[ 
https://issues.apache.org/jira/browse/WICKET-40?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12479571
 ] 

Jean-Baptiste Quenot commented on WICKET-40:
--------------------------------------------

So the culprit must be:


In ServletWebRequest I find:

        public String getPath()
        {
                return 
((WebApplication)Application.get()).getWicketFilter().getRelativePath(
                                httpServletRequest);
        }

And in WicketFilter:

        public String getRelativePath(HttpServletRequest request) {
                String path = request.getServletPath();
                ...

So WicketFilter is the culprit, as getServletPath() decodes the URL, see:
http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/http/HttpServletRequest.html#getServletPath()

> Parameters of nice URL's pages with 'sensitive' characters
> ----------------------------------------------------------
>
>                 Key: WICKET-40
>                 URL: https://issues.apache.org/jira/browse/WICKET-40
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.2.3
>            Reporter: Jan Bareš
>         Assigned To: Alastair Maw
>
> Wicket uses HttpServletRequest.getPathInfo() to get the the URL. The returned 
> string is already URL decoded, so when the request parameter pair contains 
> %2F, it will be returned as '/', so the request pair will be broken (the same 
> applies to other characters like '+' etc). This was cseen with Jetty 6 and 
> Tomcat 5.5.
> Wicket should use HttpServletRequest.getRequestURI() or getRequestURL() as 
> this seems to return URL as it was passed to the server.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to