I'm trying to run the Tomcat with JBoss Embedded jpa booking example. I run the build and deploy the war. I then get the following error:

ERROR [catalina.core.ContainerBase.[Catalina].[localhost].[/jboss-seam-jpa]] Error configuring application listener of class com.sun.faces.config.ConfigureListener
java.lang.NoClassDefFoundError: javax/el/CompositeELResolver
        at java.lang.Class.getDeclaredConstructors0(Native Method)
        at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357)
        at java.lang.Class.getConstructor0(Class.java:2671)
        at java.lang.Class.newInstance0(Class.java:321)
        at java.lang.Class.newInstance(Class.java:303)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3618)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4104

I find this class exists in el-api.jar which is not in the classpath. So I add el-api.jar to the WEB-INF/lib directory. I then get the following error:

INFO: JSF1048: PostConstruct/PreDestroy annotations present.  ManagedBeans methods marked with these annotations will have said annotations processed.
Sep 19, 2008 5:37:50 PM com.sun.faces.config.ConfigureListener installExpressionFactory
SEVERE: Error Instantiating ExpressionFactory
java.lang.ClassNotFoundException: com.sun.el.ExpressionFactoryImpl
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1332)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1181)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:164)
        at com.sun.faces.config.ConfigureListener.installExpressionFactory(ConfigureListener.java:1521)

This library appears to be in el-ri.jar or JSP 2.1 jar. Am I doing something wrong? Is there a place that explains how to run seam applications on tomcat 5.5.x? Any help is greatly appreciated!


have you looked at the docs, there's also some pretty good info on the forums at www.seamframework.org and also the old forums at www.jboss.org.

Thanks! I did post on the seamframework.org user forum. I was just curious if stackoverflow.com community would be able to come up with an answer for such a specific question.
Joe Dean
+1  A: 

I got this to work. I ran ant tomcat55 under the seam/examples/jpa example. This included the el-.jars needed. I then ran 'ant clean' and 'ant jboss-embeded' and manually copied in all of the el-.jars from the tomcat55 make. This got past my problem above. Now I'm able to start tomcat 5.5.9 with embedded JBoss. I can run the booking example now with no problems.

Joe Dean