[ 
http://issues.apache.org/jira/browse/ADFFACES-15?page=comments#action_12417639 
] 

Adam Winer commented on ADFFACES-15:
------------------------------------

In talking over the menu model (and other collection models and data models), 
I've realized that XMLMenuModel is necessarily a per-request object;  it cannot 
be shared among multiple users or threads (the iteration through model makes 
the object stateful and single-threaded).

As a consequence, we need some refactoring:
 - Caching of the parsed XML needs to be handled by the MenuContentHandler, 
which can
    be a single shared instance, probably by the MenuContentHandler storing 
shared results
    on the application map.
 - XMLMenuModel doesn't need to store anything itself anywhere other than on the
   instance, or perform any caching itself (since it's necessarily a 
per-request object).

We can chat offline if the above isn't clear;  sorry for not realizing this the 
first time through!

A couple of other things I noticed in this pass:
 - I've moved ClassLoaderUtils into the adf-faces-api JAR, so you can use its 
getServices() method instead of javax.imageio.spi.ServiceRegistry.
 - MenuContentHandler doesn't need all of the methods that it currently has to 
be public.  However, it'll probably need some new APIs given the above 
refactoring.



> Added XMLMenuModel
> ------------------
>
>          Key: ADFFACES-15
>          URL: http://issues.apache.org/jira/browse/ADFFACES-15
>      Project: MyFaces ADF-Faces
>         Type: New Feature

>  Environment: software platform
>     Reporter: Gary Kind
>  Attachments: trunk.patch
>
> Additions to MyFaces ADF-Faces to allow easy creation of menus (navigation 
> and tabbed navigation) for .jspx pages using ADF-Faces UI components.   Menus 
> are specified in XML Metadata files.  In the .jspx page menu items are 
> af:commandNavigationItems nodestamped inside of location-specific facets that 
> are children of af:panelPage.  The Menu Model  managed bean that processes 
> the metadata files, along with the navigation-rules/cases are specified in 
> the faces-config.xml file.

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

Reply via email to