You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Felix Meschberger (JIRA)" <ji...@apache.org> on 2012/07/14 21:48:34 UTC

[jira] [Commented] (SLING-2533) ResourceCollector fails to resolve selector scripts when no extension is used

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

Felix Meschberger commented on SLING-2533:
------------------------------------------

Conceptually, there can only be a selector if there also is an extension.

Now, this is really a case where Sling's RequestDispatcher is setup with a defined selector where the extension still does not exist.

Given the basic concept (no selector without an extension) this use is probably an error and is expected to fail.

Another angle to look at this: Extensions play a vital role in Sling for selecting the default response content type and thus to easily convey the client's response type preference. As such requests without extensions should be handled with extreme care up to the point that they should be discouraged.

So, rather than applying the patch, I am (at this point) more inclined to change the RequestDispatcher such as to fail with an exception if the extension is null but the selector is not.
                
> ResourceCollector fails to resolve selector scripts when no extension is used
> -----------------------------------------------------------------------------
>
>                 Key: SLING-2533
>                 URL: https://issues.apache.org/jira/browse/SLING-2533
>             Project: Sling
>          Issue Type: Bug
>          Components: Servlets
>    Affects Versions: Servlets Resolver 2.1.2
>         Environment: this applies to version 2.1.3-SNAPSHOT
>            Reporter: Tyson Norris
>         Attachments: sling-2533.patch
>
>
> A specific use case where this comes up is:
> request: http://localhost:4502/content/test/include
> In JCR repo:
> - node at content/test/include has sling:resourceType=test/main
> - script to render this resource is /apps/test/main/GET.jsp
> - script to render different type with selector referneced via:
> <sling:include resourceType="test/sometype" replaceSelectors="special"/>
> - script to render the different type is /apps/test/sometype/special.jsp 
> in this case, special.jsp script is only resoved if renamed to special.GET.jsp
> Note that:
> - no extension on requested URL
> - using a replaced selector in sling:include should behave similar to specifying an exentsion when the extension is null, I think. 
> See attached patch to ResourceCollector and ScriptSelectionTest 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira