Erro ao startar Tomcat 7.0 + JSF 2.0

Pessoal,

Já procurei em vários tópicos mas nenhum me trouxe um resultado positivo.

Ao criar um novo projeto JSF 2.0 + Tomcat 7.0, ao startar o tomcat, ele me retorna o seguinte erro:

Obs.: Estão adicionados as seguintes libs: jsf-imp.jar (2.0)
jsf-api.jar (2.0)
jstl-api.jar (1.2)
jsf-impl.jar (1.2)

Segue o erro no console:

[color=blue]12/03/2012 21:12:06 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre6\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\Windows Live\Shared;C:\Program Files (x86)\EgisTec MyWinLocker\x64;C:\Program Files (x86)\EgisTec MyWinLocker;C:\Program Files\Java\jdk1.6.0_25\bin
12/03/2012 21:12:07 org.apache.tomcat.util.digester.SetPropertiesRule begin
AVISO: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property ‘source’ to ‘org.eclipse.jst.jee.server:TesteJSF’ did not find a matching property.
12/03/2012 21:12:07 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler [“http-bio-8080”]
12/03/2012 21:12:07 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler [“ajp-bio-8009”]
12/03/2012 21:12:07 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 868 ms
12/03/2012 21:12:07 org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
12/03/2012 21:12:07 org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.26
12/03/2012 21:12:09 com.sun.faces.config.ConfigureListener contextInitialized
INFO: Inicializando Mojarra 2.0.0 (FCS b23) para o contexto ‘/TesteJSF’
12/03/2012 21:12:10 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.
12/03/2012 21:12:11 com.sun.faces.config.ConfigManager initialize
[/color]INFO: Unsanitized stacktrace from failed start…
[color=red]java.lang.NullPointerException
at com.sun.faces.util.Util.loadClass(Util.java:200)
at com.sun.faces.config.processor.AbstractConfigProcessor.loadClass(AbstractConfigProcessor.java:312)
at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processHandlerClass(FaceletTaglibConfigProcessor.java:416)
at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTags(FaceletTaglibConfigProcessor.java:370)
at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTagLibrary(FaceletTaglibConfigProcessor.java:313)
at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.process(FaceletTaglibConfigProcessor.java:262)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:337)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:219)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4779)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5273)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556)
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)
12/03/2012 21:12:11 org.apache.catalina.core.StandardContext listenerStart
GRAVE: Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:354)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:219)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4779)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5273)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556)
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: java.lang.NullPointerException
at com.sun.faces.util.Util.loadClass(Util.java:200)
at com.sun.faces.config.processor.AbstractConfigProcessor.loadClass(AbstractConfigProcessor.java:312)
at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processHandlerClass(FaceletTaglibConfigProcessor.java:416)
at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTags(FaceletTaglibConfigProcessor.java:370)
at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.processTagLibrary(FaceletTaglibConfigProcessor.java:313)
at com.sun.faces.config.processor.FaceletTaglibConfigProcessor.process(FaceletTaglibConfigProcessor.java:262)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:337)
… 11 more
12/03/2012 21:12:11 org.apache.catalina.core.StandardContext startInternal
GRAVE: Error listenerStart
12/03/2012 21:12:11 org.apache.catalina.core.StandardContext startInternal
GRAVE: Context [/TesteJSF] startup failed due to previous errors
12/03/2012 21:12:11 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:804)
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:306)
at com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:104)
at com.sun.faces.config.ConfigureListener.contextDestroyed(ConfigureListener.java:305)
at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4819)
at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5466)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:160)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1566)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1556)
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)
[/color]12/03/2012 21:12:11 org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive C:\apache-tomcat-7.0.26\webapps\UnibrasilWeb01.war
12/03/2012 21:12:11 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory C:\apache-tomcat-7.0.26\webapps\docs
12/03/2012 21:12:11 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory C:\apache-tomcat-7.0.26\webapps\examples
12/03/2012 21:12:11 org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: contextInitialized()
12/03/2012 21:12:11 org.apache.catalina.core.ApplicationContext log
INFO: SessionListener: contextInitialized()
12/03/2012 21:12:11 org.apache.catalina.core.ApplicationContext log
INFO: ContextListener: attributeAdded(‘org.apache.jasper.compiler.TldLocationsCache’, ‘org.apache.jasper.compiler.TldLocationsCache@37c3432a’)
12/03/2012 21:12:11 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory C:\apache-tomcat-7.0.26\webapps\host-manager
12/03/2012 21:12:11 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory C:\apache-tomcat-7.0.26\webapps\manager
12/03/2012 21:12:11 org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory C:\apache-tomcat-7.0.26\webapps\ROOT
12/03/2012 21:12:11 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler [“http-bio-8080”]
12/03/2012 21:12:12 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler [“ajp-bio-8009”]
12/03/2012 21:12:12 org.apache.catalina.startup.Catalina start
INFO: Server startup in 4468 ms

PRa q isso tudo rapaz?

jsf-imp.jar (2.0)
jsf-api.jar (2.0)
jstl-api.jar (1.2)
jsf-impl.jar (1.2)

Deixa só o do 2.0

Ok, mesmo retirando o erro continua.

Segue o meu web.xml

<?xml version="1.0" encoding="UTF-8"?>


TesteJSF

javax.faces.PROJECT_STAGE
Development

index.html Faces Servlet javax.faces.webapp.FacesServlet 1 Faces Servlet /faces/* Faces Servlet *.jsf Faces Servlet *.xhtml

Isso aqui tem que ser assim

Faces Servlet /faces/* *.jsf

Siga esse exemplo desse post, vai te ajudar:JSF - Hello World, AutoComplete

Obrigado pelo link, mas ainda sim o erro continua…

Por um acaso voce tem algum projeto hello word pra me enviar?

que seja eclipse indigo, jsf 2.0 + tomcat 7 ?

Obrigado desde já!

Oi lucaslimeira!

Conseguiu resolver este problema?
Estou com o mesmo problema que o seu. Já fiz várias alterações, mas nenhum sucesso.

Obrigada,
Laila

Faz um tempinho já, mas para resolver o problema eu acabei trocando de application server.

Passei a utilizar o Glassfish. E o erro não voltou a acontecer.

=S

Tente fazer isso, caso contrário, poste aqui novamente o erro gerado.

Att,
Lucas Limeira

Oi lucaslimeira!

Como o livro que estou lendo dá opção de usar o MyFaces, parei de usar o Mojarra e passei a usar o MyFaces. Agora minha jsp aparece sem dar nenhum erro no servidor.

Obrigada!
Laila Rothe

lucaslimeira, agora deu certo com Mojarra.

Quando está criando o projeto, em JSF Capabilities, em Type clique em User Library, clique no ícone de download, ao abrir a tela selecione JSF 2.1 (Mojarra 2.1.6-FCS), next, aceitar o termo e finish.
Ao finalizar o download você conseguirá usar o Mojarra, e importar todas as libs até mesmo por ctrl+c/ctrl+v direto no eclipse.
Pode fazer o mesmo para MyFaces se preferir usá-lo no lugar do Mojarra.

Não dará mais este erro ao inicializar o servidor e sua página jsf apresentará sem erros =)

Obrigada,
Laila Rothe

(Y)

Vá no seu workspace do e delete a pasta metadata e a pasta server. Depois configure novamente seu servidor e rode seu projeto. Se o problema persistir delete a pasta do seu tomcat e repita o processo.