在webapp启动期间获取ServletException和NoClassDefFoundError

时间:2011-05-02 10:04:23

标签: java jsp servlets jpa

我收到以下错误:

javax.servlet.ServletException: Error instantiating servlet class auth.Login

java.lang.NoClassDefFoundError: javax/persistence/Persistence

如何确保我的项目配置设置正确?

对我而言,这看起来是正确的。

enter image description here

2 个答案:

答案 0 :(得分:1)

我假设java.lang.NoClassDefFoundError: javax/persistence/Persistence是servlet实例化错误的根本原因,所以我们现在可以忽略servlet实例化错误。 NoClassDefFoundError表示消息中提到的类存在于webapp的编译时类路径中,但不存在于webapp的运行时类路径中。

/lib文件夹中的那些JAR实际上应该进入/WEB-INF/lib。这是webapp的运行时类路径的一部分。此外,您还应删除这三个jsp*servlet* JAR文件。它们不属于webapp库。它们属于servletcontainer库。如果您这样做是为了修复编译错误,则必须修复differently

答案 1 :(得分:-1)

我认为运行时类路径没有servlet-api.jar,这导致java.lang.NoClassDefFoundError: javax/persistence/Persistence

其次如前所述,您的库应位于WEB-INF/lib文件夹下以修复错误