Tenho trabalhado com JSF e percebi que necessito de incorporar o richfaces na minha aplicação.
Eu segui os passos do tutorial do Edison Gonçalves, porém não obtive exito, pelo fato que ele inicia um projeto novo e utiliza o JSF 1.2.
Alguém poderia me informar quais os JARs que devo adicionar ao meu projeto, além do que eu devo adicionar ao meu web-inf.xml?
Utilizo o Eclipse Galileo e JBoss Tools para desenvolvimento Web.
Desde já, agradeço a todos.
Em primeiro lugar muito obrigado pela atenção e a ajuda. Mas como em tentativas anteriores, ocorreram erros que não permitiram que a aplicação fosse levantada.
Você sabe do que se trata?
Segue abaixo o Log do Tomcat:
SEVERE: Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
at org.ajax4jsf.renderkit.ChameleonRenderKitFactory.(ChameleonRenderKitFactory.java:50)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at javax.faces.FactoryFinder.getImplGivenPreviousImpl(FactoryFinder.java:586)
at javax.faces.FactoryFinder.getImplementationInstance(FactoryFinder.java:472)
at javax.faces.FactoryFinder.access$400(FactoryFinder.java:139)
at javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:796)
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:306)
at com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist(FactoryConfigProcessor.java:303)
at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:220)
at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:335)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:223)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3972)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4467)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:722)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:593)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1484)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1329)
… 29 more
21/07/2010 09:09:20 org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
21/07/2010 09:09:20 org.apache.catalina.core.StandardContext start
SEVERE: Context [/IndWeb] startup failed due to previous errors
21/07/2010 09:09:20 org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
SEVERE: A web application registered the JBDC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
Vale considerar que eu estou usando a distribuição JSF mojarra-2.0.2-FCS e richfaces-ui-3.3.3.Final.
O erro só ocorre quando eu adiciono os JARs do Richfaces 3.3.3.
Em pesquisa na net, vi que mesmo com a implementação richfaces 3.3.3 para JSF 2.0, o richfaces 3.3.3 só funciona bem com JSF 1.2.
Utilizando o Eclipse Helios com o Tomcat 7.0, funciona que é uma beleza e a depender do que se espera em termos de IDE, nem precisa do JBoss Tools.
Aos que tem o mesmo problema, indico tentarem utilizar o Eclipse Helios com Tomcat 7.0, mas não esqueçam de mudar o Text File Encode para UTF-8, se não quiserem ter problemas com acentuação.
O RichFaces ainda não é estável em sua versão para JSF 2.0.
Eu até consegui fazer ele funcionar, mas tem tantos bugs que eu preferi trabalhar com o Primefaces.
O Primefaces está bem mais estável e funcional, além de ter todos os manuais e uma grande comunidade de usuários.
É a melhor opção para JSF 2.0.
É só entrar em www.primefaces.org e baixar. Baixa também o manual.
Se você tiver qualquer dúvida para a configuração do ambiente, me dá um toque.