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

Leonardo Uribe resolved MYFACES-3004.
-------------------------------------

       Resolution: Fixed
    Fix Version/s: 2.0.4-SNAPSHOT
         Assignee: Leonardo Uribe

> prerenderView system event callback only triggered in certain cases
> -------------------------------------------------------------------
>
>                 Key: MYFACES-3004
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3004
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.0.2, 2.0.3
>         Environment: all, server
>            Reporter: Werner Punz
>            Assignee: Leonardo Uribe
>             Fix For: 2.0.4-SNAPSHOT
>
>
> Following scenario, two pages with implicit navigation. A prerender view 
> system event handler set over 
>   <h:head>
>         <title>Facelet Title</title>
>         <f:metadata>
>             <f:event listener="#{pageHandler.prerender}" type="preRenderView" 
> />
>         </f:metadata>
>     </h:head>
> Now the prerender event is called:
> a) if I go via http get into the page
> b) If I execute actions which stay on the page
> The event handler however is not called
> if I navigate into the page via an implicit (maybe also explicit) navigation 
> case.
> A quick test revealed that the event handler is called in three cases in 
> mojarra and I assume our behavior is faulty
> and the behavior from mojarra is the one compliant to the spec.
> I am setting the priority to major because the prerenderview event is very 
> important in certain app classes which use callbacks to this event
> to deal with auto display mechanisms and with data loading in certain app 
> states.
> Here is the complete example:
> page1:
> <?xml version='1.0' encoding='UTF-8' ?>
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
> <html xmlns="http://www.w3.org/1999/xhtml";
>       xmlns:h="http://java.sun.com/jsf/html";
>       xmlns:f="http://java.sun.com/jsf/core";>
>     <h:head>
>         <title>Facelet Title</title>
>         <f:metadata>
>             <f:event listener="#{pageHandler.prerender}" type="preRenderView" 
> />
>         </f:metadata>
>     </h:head>
>     <h:body>
>         <h:form>
>         Hello from Facelets
>         <h:commandLink action="page2" value="page2"/>
>         </h:form>
>     </h:body>
> </html>
> page2:
> <?xml version='1.0' encoding='UTF-8' ?>
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd";>
> <html xmlns="http://www.w3.org/1999/xhtml";
>       xmlns:h="http://java.sun.com/jsf/html";>
>     <h:head>
>         <title>Facelet Title</title>
>     </h:head>
>     <h:body>
>         <h:form>
>             Hello from Facelets
>             <h:commandLink action="page1" value="go to page 1" />
>         </h:form>
>     </h:body>
> </html>
> and the corresponding bean:
> @ManagedBean
> @RequestScoped
> public class PageHandler {
>     public void prerender() {
>         System.out.println("Prerender View");
>     }
> }

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