Yes, you're right, Gurkan. I reopened the issue, because this is a total showstopper for the 2.0.2 release!
Regards, Jakob 2010/9/16 Gurkan Erdogdu <[email protected]>: > I think problem is that for non JSF applications, factories are not > configured. > Therefore in ManagedBeanDestroyerListener # contextInitialized > > > facesContext.getApplication().subscribeToEvent(PreDestroyCustomScopeEvent.class, > destroyer); > > facesContext.getApplication().subscribeToEvent(PreDestroyViewMapEvent.class, > destroyer); > > > facesContext.getApplication() throws below exception, > > > > ----- Original Message ---- > From: Gurkan Erdogdu <[email protected]> > To: MyFaces Development <[email protected]> > Sent: Thu, September 16, 2010 10:58:59 AM > Subject: Re: [jira] Resolved: (MYFACES-2919) LifecycleProvider Based Problems > and Tomcat7 LifeCycleProvider Support > > After applying latest changes and build trunk, I am getting exception when > deploying non JSF based web application > > > SEVERE: Exception sending context initialized event to listener instance of > class org.apache.myfaces.webapp.StartupServletContextListener > java.lang.IllegalStateException: No Factories configured for this Application. > This happens if the faces-initialization does not work at all - make sure that > you properly include all configuration settings necessary for a basic faces > application and that all the necessary libs are included. Also check the > logging > > output of your web application and your container for any exceptions! > If you did that and find nothing, the mistake might be due to the fact that > you > use some special web-containers which do not support registering > context-listeners via TLD files and a context listener is not setup in your > web.xml. > A typical config looks like this; > <listener> > > <listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class> > > > </listener> > > · at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:172) > · at > org.apache.myfaces.context.servlet.FacesContextImplBase.getApplication(FacesContextImplBase.java:131) > > > · at > org.apache.myfaces.webapp.ManagedBeanDestroyerListener.contextInitialized(ManagedBeanDestroyerListener.java:143) > > > · at > org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:111) > > > · at > org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4323) > > > · at > org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4780) > > > .................. > .................. > > > > ----- Original Message ---- > From: Leonardo Uribe (JIRA) <[email protected]> > To: [email protected] > Sent: Thu, September 16, 2010 3:35:33 AM > Subject: [jira] Resolved: (MYFACES-2919) LifecycleProvider Based Problems and > Tomcat7 LifeCycleProvider Support > > > [ > https://issues.apache.org/jira/browse/MYFACES-2919?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel > > ] > > Leonardo Uribe resolved MYFACES-2919. > ------------------------------------- > > Resolution: Fixed > > Revert the point when exceptions are swallowed and add a log message there is > not necessary, because the related code is only for check if tomcat 6 is > available. Now, DefaultLifecycleProviderFactory uses one LifecycleProvider per > webapp. It was also necessary other fixes like register ManagedBeanDestroyer > on > a proper location (that code should be on ManagedBeanDestroyerListener, not on > FacesConfigurator) > >> LifecycleProvider Based Problems and Tomcat7 LifeCycleProvider Support >> ---------------------------------------------------------------------- >> >> Key: MYFACES-2919 >> URL: https://issues.apache.org/jira/browse/MYFACES-2919 >> Project: MyFaces Core >> Issue Type: Bug >> Reporter: Gurkan Erdogdu >> Assignee: Jakob Korherr >> Fix For: 2.0.2-SNAPSHOT >> >> Attachments: MYFACES-2919-2.patch, patch.txt >> >> >> Patch content >> ---------------------- >> 1- ResourceAnnotationLifecycleProvider : It does not check super class for >>annotations. It must examine super classes. This is specificed in Java EE 6 >>specification, EE 5.2.5 Annotations and Injections. >> 2- TomcatAnnotationLifecycleProvider : isAvailable Method must catch >>"Throwable" and ignore them. Otherwise, it throws error/s that are not catched >>and calling code is not able to process other lifecycle providers. >> 3- StartupServletContextListener : Early initiliazation of lifecycle >> provider. > >>Otherwise, it is not possible to use META-INF/services providers. >> 4- pom.xml : Adding Tomcat 7 libs. >> 5- Tomcat7AnnotationLifecycleProvider : Tomcat 7 based LifeCycleProvider >>implementation. > > -- > This message is automatically generated by JIRA. > - > You can reply to this email to add a comment to the issue online. > > > -- Jakob Korherr blog: http://www.jakobk.com twitter: http://twitter.com/jakobkorherr work: http://www.irian.at
