[ 
https://issues.apache.org/jira/browse/SLING-1899?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12972490#action_12972490
 ] 

Carsten Ziegeler commented on SLING-1899:
-----------------------------------------

I tend to agree with Stefan here - the resource resolver API is general purpose 
and it seems strange that a map method also does url encoding.

Of course we need some convenience for jsps or other scripting layers.

And changing the behaviour of the method now - after we have done several 
releases with url encoding - we shouldn't change it for compatilibty reasons.

So I think we should:
- fix the javadocs of the map method
- deprecate the map methods
- introduce a new "map" method which does pure mapping
- introduce some convenience stuff for scripting (invoking map and encoding)

> JcrResourceResolver map method is not reverse operation of resolve method 
> with special chars in path
> ----------------------------------------------------------------------------------------------------
>
>                 Key: SLING-1899
>                 URL: https://issues.apache.org/jira/browse/SLING-1899
>             Project: Sling
>          Issue Type: Bug
>          Components: JCR
>    Affects Versions: JCR Resource 2.0.6
>            Reporter: Stefan Seifert
>         Attachments: 101216_mapresolv_specialchars_fix.patch, 
> 101216_mapresolve_specialchars_test.patch
>
>
> according to the javadocs of the ResourceResolver API interface, the map 
> method is intended as the reverse operation of the resolve method.
> this is not the case if the path contains special chars like spaces - they 
> are url-encoded, although the javadocs of the API does not require this.
> additionally the resolve method does not url-decode the path (which is 
> correct in my opinion because the servlet engine already decodes the path).
> the map method should be fixed, so that not url-encoding takes place in it. 
> the application is responsible for url-encoding a path if needed, not the 
> sling api.
> i've attached a patch which contains a simple unit tests that makes the 
> current implementation fail when resolving a path generated with the map 
> method: [^101216_mapresolve_specialchars_test.patch]

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