MyFacesGenericPortlet is causing multiple instances of PhaseListeners to be 
created
-----------------------------------------------------------------------------------

                 Key: MYFACES-1671
                 URL: https://issues.apache.org/jira/browse/MYFACES-1671
             Project: MyFaces Core
          Issue Type: Bug
          Components: Portlet_Support
    Affects Versions: 1.1.4
         Environment: WinXP / Liferay 4.3.0 / Tomcat 6.0.13 / Seam 1.2.1GA
            Reporter: Neil Griffin


As described in this issue:
http://jira.jboss.com/jira/browse/JBSEAM-1556

When running in a portlet environment and using MyFaces, JSF PhaseListeners get 
registered TWICE, due to the way MyFaces initializes itself: 

1. MyFaces has a StartupServletContextListener that initializes the JSF 
framework (the first time). 

2. The MyFacesGenericPortlet.initMyFaces() method initializes the JSF framework 
(a second time). 

In order to fix this, the MyFacesGenericPortlet must do a better job at 
determining whether or not the JSF framework has been initialized. There is no 
need to add the PhaseListeners to the Lifecycle a second time. And in the case 
of Seam, this can actually cause a problem, because there can be only one Seam 
phase listener active (that extends Seam's AbstractSeamPhaseListener) at any 
given time. In the case of other portlet phase listeners (like FileUpload ones 
that parse mutlipart-formdata), uploaded files would get saved twice, I would 
imagine.


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