[seam-issues] [JBoss JIRA] Created: (SEAMFACES-163) FacesServletInitializer interferes with FacesInitializer

Bryn Cooke (JIRA) jira-events at lists.jboss.org
Mon May 16 10:59:00 EDT 2011


FacesServletInitializer interferes with FacesInitializer
--------------------------------------------------------

                 Key: SEAMFACES-163
                 URL: https://issues.jboss.org/browse/SEAMFACES-163
             Project: Seam Faces
          Issue Type: Bug
          Components: Configuration API
    Affects Versions: 3.0.1
         Environment: Glassfish 3.1. Mojarra 2.1.1, Weld 1.1.1, Seam-Faces 3.0.1
            Reporter: Bryn Cooke


I have a basic 1 page JSF app on glassfish with seam-faces.
Sometimes I am getting java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.context.FacesContextFactory

After some digging I think the problem is the following:

org.jboss.seam.faces.config.FacesServletInitializer and com.sun.faces.config.FacesInitializer both have logic that tries to register the faces servlet if one isn't already registered.
Glassfish seems to execute context listeners in a random order. Whichever listener is run first will perform faces initialization (they both check to see if a faces servlet has been 
configured). 

com.sun.faces.config.FacesInitializer has the following code, which seems to be required to set up faces correctly.

            // The following line is temporary until we can solve an ordering
            // issue in V3.  Right now the JSP container looks for a mapping
            // of the FacesServlet in the web.xml.  If it's not present, then
            // it assumes that the application isn't a faces application.  In this
            // case the JSP container will not register the ConfigureListener
            // definition from our TLD nor will it parse cause or JSP TLDs to
            // be parsed.
            servletContext.addListener(com.sun.faces.config.ConfigureListener.class);

This bug is not deterministic due to the random ordering of listeners by Glassfish.



--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the seam-issues mailing list