我想用JBoss Embedded jpa预订示例运行Tomcat。我运行构建并部署战争。然后我得到了以下错误:可以使用JBoss Embedded在Tomcat 5.5.9上运行Seam 2.0.2sp1应用程序吗?
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
我发现这个类EL-api.jar文件是不是在classpath中存在。所以我将el-api.jar添加到WEB-INF/lib目录中。然后我得到以下错误:
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)
此库似乎在el-ri.jar或JSP 2.1 jar中。难道我做错了什么?有没有解释如何在tomcat 5.5.x上运行seam应用程序的地方?任何帮助是极大的赞赏!
谢谢!我曾在seamframework.org用户论坛上发布过。我只是好奇,如果stackoverflow.com社区将能够拿出一个这样的具体问题的答案。 – 2008-09-22 15:34:37