Problems with pathes ending with .jsp in WebSphere
--------------------------------------------------

                 Key: SLING-2410
                 URL: https://issues.apache.org/jira/browse/SLING-2410
             Project: Sling
          Issue Type: Bug
          Components: Launchpad
    Affects Versions: Launchpad Base 2.3.0
            Reporter: Carsten Ziegeler
            Assignee: Carsten Ziegeler
             Fix For: Launchpad Base 2.4.0


Found a potential problem with pathes ending with *.jsp and WebSphere. The 
Sling web.xml contains the following mapping:

    <!-- Overwrite Mappings which may be present in default web.xml files -->
    <servlet-mapping>
        <servlet-name>sling</servlet-name>
        <url-pattern>*.jsp</url-pattern>
    </servlet-mapping>

With the idea to not have any default web.xml grabbing .jsp requests.

The problem is that servlet path and path info values for requests matching the
*.jsp pattern are defined differently than if the mapping would be /.

Thus a request /path/index.jsp mapping *.jsp gets:
    servlet path = /path/index.jsp
    path info = null

Thus (1) the Http Service bridge implementation assumes the serlvet registered
at root (because path info is looked at) thus causing the Sling Main Servlet to
be called. (2) The Sling JCR Resource Resolver assumes the root path because
path info is null and thus resolves to root and starts the root path redirect
which causes /index.html to be appended to the request URL.

It looks like WebSphere is the only known Servlet Container to interpret the
*.jsp mapping before the / mapping. Tomcat, JBoss, and WebLogic seem to not do
that.



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

        

Reply via email to