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

Max Starets updated TRINIDAD-1764:
----------------------------------

    Status: Patch Available  (was: Open)

> System event listener state saving
> ----------------------------------
>
>                 Key: TRINIDAD-1764
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-1764
>             Project: MyFaces Trinidad
>          Issue Type: Bug
>          Components: Components
>    Affects Versions: 2.0.0-alpha
>            Reporter: Andy Schwartz
>            Assignee: Max Starets
>         Attachments: trinidad-1764.patch
>
>
> The JSF specification requires that UIComponent provide implementations for 
> the following new system event-related methods:
> - subscribeToEvent()
> - unsubscribeFromEvent()
> - getListenersForEventClass()
> Both Mojarra and MyFaces provide implementations of these methods in 
> UIComponent.
> However, UIComponent itself does not provide any state saving implementation. 
>  This is provided by UIComponentBase - ie. UIComponentBase handles state 
> saving for system event listeners stored on the UIComponent instance.
> This approach is flawed in that it only provides correct behavior for 
> component implementations that extend UIComponentBase.  Components that 
> extend UIComponent directly will be subtly broken in that system event 
> listeners can be registered, but will not be state saved.  Furthermore, since 
> the system event listener storage in UIComponent is package-private, there is 
> no way for components that extend UIComponent directly to handle state saving 
> for registered listeners.
> The only option is for components that extend UIComponent directly to 
> implement their own (redundant) storage for system event listeners so that 
> the component implementation can provide its own state saving implementation.
> Since all of the Trinidad components extend UIComponent (not 
> UIComponentBase), we'll need to implement such a solution in UIXComponentBase.

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