You are viewing a plain text version of this content. The canonical link for it is here.
Posted to adffaces-issues@incubator.apache.org by "Matthias Weßendorf (JIRA)" <ad...@incubator.apache.org> on 2007/03/16 08:21:19 UTC

[jira] Updated: (ADFFACES-189) Performance optimization in XMLMenuModel.getFocusRowKey() breaks menu model when called before the RenderResponse Phase of the request lifecycle.

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

Matthias Weßendorf updated ADFFACES-189:
----------------------------------------

        Fix Version/s: 1.0.0-incubating-core
    Affects Version/s: 1.0.0-incubating-core

> Performance optimization in XMLMenuModel.getFocusRowKey() breaks menu model when called before the RenderResponse Phase of the request lifecycle.
> -------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: ADFFACES-189
>                 URL: https://issues.apache.org/jira/browse/ADFFACES-189
>             Project: MyFaces ADF-Faces
>          Issue Type: Bug
>    Affects Versions: 1.0.0-incubating-core
>            Reporter: Gary Kind
>         Assigned To: Jeanne Waldman
>             Fix For: 1.0.0-incubating-core
>
>         Attachments: trunk.patch
>
>
> In previous versions of ADF Faces, XMLMenuModel.getFocusRowKey() was only called during the RenderResponse phase of the request lifecycle, AFTER navigation had occurred.   It was called 5 or more times to render the new page, each time returning the same value.  As an optimization, a static variable was used to prevent the logic from executing after the first time getFocusRowKey() was called.  Instead, the previous focus path was returned.  Since the menu model's scope is request, everything reset after the request finished.   In the new re-architected version of ADF Faces, getFocusRowKey() is called in other phases, before the RenderResponse phase.   This incorrectly set the static variable so that when getFocusRowKey() is called during the RenderResponse phase -- even the first time -- the incorrect focus path is returned.  
> The solution (for now) is to remove the optimization.   I have an optimization but it needs to be fully tested.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.