[ 
https://issues.apache.org/jira/browse/COCOON-1943?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Klimetschek updated COCOON-1943:
------------------------------------------

    Attachment: servlet-connection-uri-encoding.patch

Applies to cocoon-servlet-service-impl only.

> [Patch] Parameters in blocks-protocol URIs get decoded too early
> ----------------------------------------------------------------
>
>                 Key: COCOON-1943
>                 URL: https://issues.apache.org/jira/browse/COCOON-1943
>             Project: Cocoon
>          Issue Type: Bug
>          Components: - Servlet service framework
>    Affects Versions: 2.2-dev (Current SVN)
>            Reporter: Alexander Klimetschek
>         Attachments: cocoon-blocks-fw-raw-encoded-URIs.patch, 
> servlet-connection-uri-encoding.patch
>
>
> When you pass parameters in the query part of a block-protocol URI, eg. 
> "block:super:/dosomething?param1=alpha&param2=beta", and they include some 
> encoded stuff, eg. "<br/>" encoded as "%3Cbr/%3E", this will get decoded 
> before the actual servlet request happens. This takes place in 
> BlockConnection.parseBlockURI() when uri.getSchemeSpecificPart() is called, 
> which will decode the string. Instead, one should call 
> uri.getRawSchemeSpecificPart(), which is exactly what the patch does.
> (A little bit Off-topic): The general point here is that I am calling a form 
> that is handled in the super block. Since you cannot pass on request 
> parameters from a POST call (that comes from the browser) to the other 
> (super) block called via the blocks-protocol (because the only interface you 
> have is the Source, where you can only pass information via the URI), you 
> have to put all parameters in the uri. I have written a simple input module 
> that creates a "param1=alpha&param2=beta" string from another input module 
> (preferrably request-param) so that you simply call: 
> "block:super:/dosomething?{params-to-uri:request-param}". This might be 
> integrated into Cocoon as a standard InputModule.

-- 
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