Sofrimento com Seam Faces 3.0 + JSF 2.0 + TomCat 7

Fala ae galera, alguém aí já conseguiu rodar um projeto utilizando Seam Faces 3.0 + JSF 2.0 + TomCat 7 ???

Tá difícil!! Segue abaixo meus arquivos de configuração e mais abaixo o erro do tomcat:

Web.xml:

<?xml version=“1.0” encoding=“UTF-8”?>
<web-app xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance” xmlns=“http://java.sun.com/xml/ns/javaee” xmlns:web=“http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd” xsi:schemaLocation=“http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd” version=“3.0”>
<display-name>JSF-SEAM-FACES</display-name>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>

<context-param>
<param-name>javax.faces.DEFAULT_SUFFIX</param-name>
<param-value>.xhtml</param-value>
</context-param>

<listener>
<listener-class>org.jboss.weld.environment.servlet.Listener</listener-class>
</listener>

&lt;session-config&gt;
    &lt;session-timeout&gt;10&lt;/session-timeout&gt;
&lt;/session-config&gt;

<resource-env-ref>
<description>Object factory para o CDI Bean Manager</description>
<resource-env-ref-name>BeanManager</resource-env-ref-name>
<resource-env-ref-type>javax.enterprise.inject.spi.BeanManager</resource-env-ref-type>
</resource-env-ref>

</web-app>


arquivo context.xml

<?xml version=“1.0” encoding=“UTF-8”?>
<Context>
<Resource name=“BeanManager” auth=“Container” type="javax.enterprise.inject.spi.BeanManager"
factory=“org.jboss.weld.resources.ManagerObjectFactory” />
</Context>


o faces-config não acrescentei nada além do default

<faces-config
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
version=“2.0”>

</faces-config>

o arquivo dentro da pasta META-INF/services com o nome org.jboss.weld.environment.Container e dentro dele o conteúdo org.jboss.weld.environment.tomcat7.Tomcat7Container

  • fiz isso pois vi em vários posts que o tomcat 7 tem um bug que faz com que o weld reconheça o tomcat7 como tomcat 6 …

meu pom.xml

<repositories>
<repository>
<id>jboss-public-repository-group</id>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public/</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
</repository>
</repositories>

&lt;dependencies&gt;
    &lt;dependency&gt;
        &lt;groupId&gt;org.jboss.weld&lt;/groupId&gt;
        &lt;artifactId&gt;weld-api&lt;/artifactId&gt;
        &lt;version&gt;1.0&lt;/version&gt;
    &lt;/dependency&gt;

    &lt;dependency&gt;
        &lt;groupId&gt;org.jboss.weld.servlet&lt;/groupId&gt;
        &lt;artifactId&gt;weld-servlet&lt;/artifactId&gt;
        &lt;version&gt;1.1.2.Final&lt;/version&gt;
    &lt;/dependency&gt;
    &lt;dependency&gt;
		   &lt;groupId&gt;org.jboss.seam.faces&lt;/groupId&gt;
		   &lt;artifactId&gt;seam-faces&lt;/artifactId&gt;
		   &lt;version&gt;3.0.2.Final&lt;/version&gt;
	&lt;/dependency&gt;
    &lt;dependency&gt;
        &lt;groupId&gt;javax.faces&lt;/groupId&gt;
        &lt;artifactId&gt;jsf-api&lt;/artifactId&gt;
        &lt;version&gt;2.0.2-FCS&lt;/version&gt;
    &lt;/dependency&gt;
    
    &lt;dependency&gt;
        &lt;groupId&gt;javax.faces&lt;/groupId&gt;
        &lt;artifactId&gt;jsf-impl&lt;/artifactId&gt;
        &lt;version&gt;2.0.2-FCS&lt;/version&gt;
    &lt;/dependency&gt;
&lt;/dependencies&gt;
&lt;build&gt;
   
	&lt;plugins&gt;
				&lt;plugin&gt;
	                &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
	                &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt;
	                &lt;configuration&gt;
	                    &lt;source&gt;1.6&lt;/source&gt;
	                    &lt;target&gt;1.6&lt;/target&gt;
	                &lt;/configuration&gt;
	            &lt;/plugin&gt;
	           	
	&lt;/plugins&gt;

e o erro do tomcat :cry:

27/10/2011 16:19:22 com.sun.faces.config.ConfigureListener contextInitialized
INFO: Inicializando Mojarra 2.1.3 (FCS 20110908) para o contexto '/weld-tutorial’
27/10/2011 16:19:23 com.sun.faces.spi.InjectionProviderFactory createInstance
INFO: JSF1048: Anotações PostConstruct/PreDestroy presentes. Os métodos ManagedBeans marcados com essas anotações informarão as anotações processadas.
27/10/2011 16:19:23 com.sun.faces.config.ConfigureListener contextInitialized
GRAVE: Critical error during deployment:
com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! Failed to locate BeanManager using any of these providers: org.jboss.seam.solder.beanManager.DefaultJndiBeanManagerProvider(11), org.jboss.seam.solder.beanManager.ServletContainerJndiBeanManagerProvider(10)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:375)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:225)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4723)
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226)
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.jboss.seam.solder.beanManager.BeanManagerUnavailableException: Failed to locate BeanManager using any of these providers: org.jboss.seam.solder.beanManager.DefaultJndiBeanManagerProvider(11), org.jboss.seam.solder.beanManager.ServletContainerJndiBeanManagerProvider(10)
at org.jboss.seam.solder.beanManager.BeanManagerLocator.getBeanManager(BeanManagerLocator.java:91)
at org.jboss.seam.faces.environment.SeamApplicationFactory.getApplication(SeamApplicationFactory.java:47)
at com.sun.faces.application.InjectionApplicationFactory.getApplication(InjectionApplicationFactory.java:91)
at com.sun.faces.config.processor.AbstractConfigProcessor.getApplication(AbstractConfigProcessor.java:130)
at com.sun.faces.config.processor.ApplicationConfigProcessor.process(ApplicationConfigProcessor.java:255)
at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:114)
at com.sun.faces.config.processor.LifecycleConfigProcessor.process(LifecycleConfigProcessor.java:116)
at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:114)
at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:222)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:360)
… 9 more
27/10/2011 16:19:23 org.apache.catalina.core.StandardContext listenerStart
GRAVE: Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
java.lang.RuntimeException: com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! Failed to locate BeanManager using any of these providers: org.jboss.seam.solder.beanManager.DefaultJndiBeanManagerProvider(11), org.jboss.seam.solder.beanManager.ServletContainerJndiBeanManagerProvider(10)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:292)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4723)
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226)
at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! Failed to locate BeanManager using any of these providers: org.jboss.seam.solder.beanManager.DefaultJndiBeanManagerProvider(11), org.jboss.seam.solder.beanManager.ServletContainerJndiBeanManagerProvider(10)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:375)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:225)
… 8 more
Caused by: org.jboss.seam.solder.beanManager.BeanManagerUnavailableException: Failed to locate BeanManager using any of these providers: org.jboss.seam.solder.beanManager.DefaultJndiBeanManagerProvider(11), org.jboss.seam.solder.beanManager.ServletContainerJndiBeanManagerProvider(10)
at org.jboss.seam.solder.beanManager.BeanManagerLocator.getBeanManager(BeanManagerLocator.java:91)
at org.jboss.seam.faces.environment.SeamApplicationFactory.getApplication(SeamApplicationFactory.java:47)
at com.sun.faces.application.InjectionApplicationFactory.getApplication(InjectionApplicationFactory.java:91)
at com.sun.faces.config.processor.AbstractConfigProcessor.getApplication(AbstractConfigProcessor.java:130)
at com.sun.faces.config.processor.ApplicationConfigProcessor.process(ApplicationConfigProcessor.java:255)
at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:114)
at com.sun.faces.config.processor.LifecycleConfigProcessor.process(LifecycleConfigProcessor.java:116)
at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:114)
at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:222)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:360)
… 9 more
27/10/2011 16:19:23 org.apache.catalina.core.StandardContext startInternal
GRAVE: Error listenerStart
27/10/2011 16:19:23 org.apache.catalina.core.StandardContext startInternal
GRAVE: Context [/weld-tutorial] startup failed due to previous errors
27/10/2011 16:19:23 com.sun.faces.config.ConfigureListener contextDestroyed
GRAVE: Unexpected exception when attempting to tear down the Mojarra runtime
java.lang.IllegalStateException: O aplicativo não foi iniciado corretamente na inicialização. Não foi possível encontrar Fábrica: javax.faces.application.ApplicationFactory
at javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:967)
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:316)
at com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:131)
at com.sun.faces.config.ConfigureListener.contextDestroyed(ConfigureListener.java:328)
at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4763)
at org.apache.catalina.core.StandardContext$4.run(StandardContext.java:5473)
at java.lang.Thread.run(Unknown Source)
27/10/2011 16:19:23 org.apache.coyote.AbstractProtocol start


É isso ae galera. Se alguem já conseguiu rodar isso aí me dá o caminho das pedras por favor!!!

Abs!!!

Alguém me ajude aê…

Mano, poste na área web.

Aqui é apenas para Notícias.

OBS.: Confira o arquivo gerado pelo seu Maven. Talvez vc deva alterar alguma configuração sua.

ThiagoInGuj

To com esse mesmo erro no meu projeto maven vc conseguiu resolver ?

[quote=alcirBarros]ThiagoInGuj

To com esse mesmo erro no meu projeto maven vc conseguiu resolver ? [/quote]

Cara realmente esse problema me estressou um bocado, então deixei pra lá. Tenta rodar com JBoss. Boa sorte!

Então ThiagoInGuj consegui configura o meu projeto o erro era o local onde tava o arquivo context.xml
que deve fica dentro da pasta META-INF

Flw

Conseguiu mesmo? Então obrigado pela resposta. Pena que não estou usando mais JSF, mas de qualquer forma obrigado!

Aqui é apenas para Notícias.