[
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