JSF + Hibernate + Richfaces

Pessoal,

estou num projeto com JSF + Hibernate + Richfaces. O problema está quando eu adiciono as bibliotecas do JBoss Richfaces ao Tomcat, ele retorna a seguinte exceção ao iniciar o conteiner:

2008-04-09 18:25:25,562 [main] WARN org.apache.commons.digester.Digester - [ComponentRule]{faces-config/component} Merge(javax.faces.ViewRoot)
2008-04-09 18:25:25,656 [main] ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/Olimpiada2008] - Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
java.lang.NoClassDefFoundError: javax/faces/lifecycle/LifecycleFactory
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at java.net.URLClassLoader.defineClass(Unknown Source)
	at java.net.URLClassLoader.access$000(Unknown Source)
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1339)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
	at javax.faces.FactoryFinder.getImplGivenPreviousImpl(FactoryFinder.java:528)
	at javax.faces.FactoryFinder.getImplementationInstance(FactoryFinder.java:426)
	at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:229)
	at com.sun.faces.config.ConfigureListener.configure(ConfigureListener.java:702)
	at com.sun.faces.config.ConfigureListener.configure(ConfigureListener.java:398)
	at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:328)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3729)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4187)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
	at org.apache.catalina.core.StandardService.start(StandardService.java:450)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
	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:294)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)

Meu web.xml está assim:

<?xml version="1.0"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
 <display-name>Olimpiada2008</display-name>
 <context-param>
  <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
  <param-value>server</param-value>
 </context-param>
 <listener>
  <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
 </listener>
 <!-- Faces Servlet -->
 <filter>
<display-name>RichFaces Filter</display-name>
<filter-name>richfaces</filter-name>
<filter-class>org.ajax4jsf.Filter</filter-class>
</filter>
<filter-mapping>
<filter-name>richfaces</filter-name>
<servlet-name>Faces Servlet</servlet-name>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
</filter-mapping>
 <servlet>
  <servlet-name>Faces Servlet</servlet-name>
  <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
  <load-on-startup>1</load-on-startup>
 </servlet>
 <!-- Faces Servlet Mapping -->
 <servlet-mapping>
  <servlet-name>Faces Servlet</servlet-name>
  <url-pattern>*.jsf</url-pattern>
 </servlet-mapping>
 <login-config>
  <auth-method>BASIC</auth-method>
 </login-config>
</web-app>

A versão do Richfaces é 3.1.4, do tomcat é a 5.5 e do java 1.6.

Obrigado por qualquer ajuda.
PS.: Deu o mesmo erro ao tentar executar o projeto com as bibliotecas do ajax4jsf versao 1.1.1.

Pessoal,

o problema estava na versão das libs commons-*.jar que estavam no projeto e no tomcat. Peguei a ultima versão de cada e aproveitei para passar para o JSF 1.2.