[seam-issues] [JBoss JIRA] Commented: (JBSEAM-4495) Page actions do not work with JSF 2.0

Marek Novotny (JIRA) jira-events at lists.jboss.org
Tue Feb 2 18:11:19 EST 2010


    [ https://jira.jboss.org/jira/browse/JBSEAM-4495?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12509955#action_12509955 ] 

Marek Novotny commented on JBSEAM-4495:
---------------------------------------

The implicit navigation is the new feature in JSF 2 and is described in the following steps (taken from http://java.dzone.com/articles/fluent-navigation-jsf-2):

   1. Detect the presence of the ? character in the logical outcome
         1. If present, capture the query string parameters that follow it the ? character
         2. The special query string parameter faces-redirect=true indicates that this navigation should be issued using a client-side redirect 
   2. If the logical outcome does not end with a file extension, append file extension of current view ID (e.g., .xhtml)
   3. If the logical outcome does not begin with a /, prepend the location of current view id (e.g., /, /admin/, etc.)
   4. Attempt to locate the template for the view ID
         1. If the template is found, create a virtual navigation case that targets the resolved view ID
         2. If the template is not found, skip implicit navigation 
   5. Carry out the navigation case
         1. If the navigation case is not a redirect, build and render the target view in the same request
         2. If the navigation case is a redirect, build a redirect URL, appending the query string parameters captured earlier, then redirect to it

The Implicit navigation algorithm is in com.sun.faces.application.NavigationHandlerImpl.findImplicitMatch(FacesContext, String, String, String)

So, we have to use null values as outcome or somehow wrap the outcome and hide it.

Dan Allen created JSF issue  - https://javaserverfaces-spec-public.dev.java.net/issues/show_bug.cgi?id=736

> Page actions do not work with JSF 2.0
> -------------------------------------
>
>                 Key: JBSEAM-4495
>                 URL: https://jira.jboss.org/jira/browse/JBSEAM-4495
>             Project: Seam
>          Issue Type: Bug
>          Components: JSF Integration
>    Affects Versions: 2.2.0.GA
>            Reporter: Jozef Hartinger
>            Assignee: Norman Richards
>            Priority: Blocker
>             Fix For: 2.2.1.CR1
>
>
> Looks like implicit navigation in JSF 2.0 messes up with page actions in Seam. For instance, the following page action from the booking example:
> <page view-id="/home.xhtml" action="#{identity.isLoggedIn}">
> seems to cause the result of the action (false) to be taken as an implicit navigation information and the application fails with
> HTTP Status 404 - /seam-booking/false.seam

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the seam-issues mailing list