CLONE -Performance optimization in XMLMenuModel.getFocusRowKey() breaks menu 
model when called before the RenderResponse Phase of the request lifecycle.
--------------------------------------------------------------------------------------------------------------------------------------------------------

                 Key: ADFFACES-392
                 URL: https://issues.apache.org/jira/browse/ADFFACES-392
             Project: MyFaces ADF-Faces
          Issue Type: Bug
            Reporter: Gary Kind
         Assigned To: Jeanne Waldman


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.

Reply via email to