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.