myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Deryk Sinotte (JIRA)" <...@myfaces.apache.org>
Subject [jira] [Created] (MYFACES-3313) Calculation of redirect URL does not preserve the extension used in Faces Servlet mapping
Date Wed, 21 Sep 2011 18:57:08 GMT
Calculation of redirect URL does not preserve the extension used in Faces Servlet mapping
-----------------------------------------------------------------------------------------

                 Key: MYFACES-3313
                 URL: https://issues.apache.org/jira/browse/MYFACES-3313
             Project: MyFaces Core
          Issue Type: Bug
    Affects Versions: 2.1.3, 2.1.2
            Reporter: Deryk Sinotte


I have a simple navigation test case that does a navigation between two pages.  Both pages
have the same simple markup:

  <h:body>
    <h2>Page 01</h2>
    <h:form>
      <h:commandButton id="navButton" 
                       value="Nav"
                       action="#{testBean.lastPage}" />
    </h:form>
  </h:body>

The backing bean methods simply return the appropriate action outcome:

    public String lastPage(){
        return "lastPage";
    }

And the faces-config file has the following navigation rules:


    <navigation-rule>
        <from-view-id>*</from-view-id>
        <navigation-case>
            <from-outcome>lastPage</from-outcome>
            <to-view-id>/page02.jsf</to-view-id>
            <redirect/>
        </navigation-case>

        <navigation-case>
            <from-outcome>firstPage</from-outcome>
            <to-view-id>/page01.jsf</to-view-id>
            <redirect/>
        </navigation-case>
    </navigation-rule>

The web.xml has a servlet mapping for .jsf files:

    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>

If I go to the page01.jsf, the page loads fine.  When I click the "Nav" button, the navigation
occurs but the URL is page02.xhtml rather than page02.jsf.  Because the extension is not preserved
and there is no mapping for .xhtml in this case, the page doesn't get handled by the Faces
Servlet.  The current version of Mojarra (2.1.3) does preserve the extension when the redirect
URL is encoded.


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message