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

Justin Edelson updated SLING-1421:
----------------------------------

    Fix Version/s:     (was: JCR Resource 2.0.8)

> Resorce Resolver Mapping - Better Support for Multiple Domain/Protocol Mapping
> ------------------------------------------------------------------------------
>
>                 Key: SLING-1421
>                 URL: https://issues.apache.org/jira/browse/SLING-1421
>             Project: Sling
>          Issue Type: Improvement
>          Components: JCR
>    Affects Versions: JCR Resource 2.0.6
>            Reporter: Stefan Seifert
>         Attachments: 100303_slingtest-mapping.zip
>
>
> in our sling CMS-based web projects we've the following scenario:
> * most pages of a website are accessed via HTTP, but some of the via HTTPs 
> (e.g. including forms submitting personal data)
> * at the same time we use the mapping features at /etc/map to shorten the 
> urls for a given domain name
> * in fact we have to configure two mappings for two domain names (one for 
> HTTP and one for HTTPS), pointing to the same start path in JCR
> with this configuration in place the sling ResourceResolver.map method 
> sometimes produces unexpected or incorrect results with the current 
> implementation.
> if the current host name and port does not match with the configured mapping 
> host name and port sling automatically adds protocol, host name and port from 
> the configuration to the result of the map method. but in the case above with 
> multiple mappings for the same start path this cannot produce correct 
> results, because the decision whether the secure or non-secure domain name 
> should be chosen is custom application logic.
> i'm not sure what the best solution is for this problem, because the current 
> implementation makes sense in some way and works well for the simple 
> scenarios. but in complex scenarios with multiple domain mappings it would be 
> more practical to use the map method only for shortening the urls and not for 
> adding the hostname.
> of course it is possible to parse the value of the map method and strip off 
> any hostname returned manually and add an own one, but this seems not 
> "right". and if the cms does a check if the internal url is valid this url 
> can be treated as invalid.
> for easy reproduction of the scenario i've attached a simple test project 
> [^100303_slingtest-mapping.zip]. please deploy it to a sling instance using 
> "mvn install" and then call in the intro page 
> http://localhost:8080/content/slingtest-mapping.html and follow the 
> instructions on the page (two host names have to be added to the local hosts 
> file). the test project contains two templates/jsp components, a 
> configuration at /etc/map with two domain names pointing to the same path and 
> some sample content nodes.
> depending whether a default mapping "/content/-/" is configured in "apache 
> sling resource resolver" the generated links on the "site 1" test page are 
> correct. but the links generate on the "site 2" test pages are wrong.

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