0

怎么解决??我安装了 Java 7,并且在启动具有我的应用程序的 tomcat 时发生了这种情况。我认为问题是基于我的应用程序。(
Tomcat 7之前运行成功。我安装了java 7并在出现此安装问题后卸载了java 6)

SEVERE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/m.apus]]
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/m.apus]]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
    ... 7 more
Caused by: java.lang.NoClassDefFoundError: javax/ejb/FinderException
    at java.lang.Class.getDeclaredFields0(Native Method)org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1556)
    ... 21 more
  • 编辑

在我安装 Java 7 之前发生了 LifecycleException。我认为这个异常不是基于此。但我不知道为什么会遇到这个异常。

4

2 回答 2

1

使用 Java EE 库,需要支持 EJB 的文件。您已经获得java.lang.NoClassDefFoundError了实现 Java EE 规范的库中的类。您需要的文件javax.ejb.jar来自版本 6 Java EE 默认参考实现。为您的 Java Web 应用程序提供 Java EE 库。最初 Tomcat 不支持 EJB。

于 2013-03-15T13:13:22.120 回答
0

Tomcat 7 不是(完整的)Java EE 容器。它“只是”一个 servlet/JSP 服务器。

如果您需要 EJB,则需要一个成熟的 Java EE 服务器,例如GlassfishJBoss

于 2013-03-15T13:15:18.540 回答