6

我整天都在为此奋斗:我有 DynamicWebProject。它工作得很好。但在某些时候,我决定清理项目中没有使用的额外 jar。清洁后,我遇到了一堆错误。所以我回滚了所有的更改(我的意思是我重新调整了所有的罐子)。但我也玩过项目的构建路径,Eclipse 的调试配置。不幸的是,我不记得这些更改(使用 Path 的东西)。当我在服务器上运行时,tomcat 向我显示:

`

04.12.2012 16:37:43 org.apache.catalina.core.ApplicationContext log
SEVERE: StandardWrapper.Throwable
java.lang.NoClassDefFoundError: javax/servlet/ServletConfig
    at org.apache.axis2.deployment.WarBasedAxisConfigurator.<init>(WarBasedAxisConfigurator.java:103)
    at org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:584)
    at org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:454)
    at org.apache.axis2.webapp.AxisAdminServlet.init(AxisAdminServlet.java:60)
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1266)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1185)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1080)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5027)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
04.12.2012 16:37:43 org.apache.catalina.core.StandardContext loadOnStartup
SEVERE: Servlet /library threw load() exception
java.lang.NoClassDefFoundError: javax/servlet/ServletConfig
    at org.apache.axis2.deployment.WarBasedAxisConfigurator.<init>(WarBasedAxisConfigurator.java:103)
    at org.apache.axis2.transport.http.AxisServlet.initConfigContext(AxisServlet.java:584)
    at org.apache.axis2.transport.http.AxisServlet.init(AxisServlet.java:454)
    at org.apache.axis2.webapp.AxisAdminServlet.init(AxisAdminServlet.java:60)
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1266)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1185)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1080)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5027)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
04.12.2012 16:37:43 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
04.12.2012 16:37:43 org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
04.12.2012 16:37:43 org.apache.catalina.startup.Catalina start
INFO: Server startup in 3556 ms

`

我真的与这场无休止的斗争息息相关。我做错了什么?Eclipse 和 Tomcat 试图告诉我什么?


完毕。

所以。我如何恢复功能。首先,我的项目是在 SVN 存储库中备份的。接下来我在 Eclipse 中创建新的工作区。不同文件夹中的新工作区。以及来自 SVN 的 Checkout 项目。之后,在步骤 - 在服务器上运行时,我发现了错误,并一一添加了错过的库(jar)。哇,它有效!所以我怎么想,问题在于 eclipce 和项目的配置,也在运行/调试配置中。如何查找配置错误,我不知道 :( 但我会在旧工作区尝试。

4

2 回答 2

8

您的类路径中缺少 servlet-api.jar。核实

更新

1) Right click on project
2) Got to java build path
3) Click on add library in right hand side.
4) Choose server run time.
5) Click next and select your tom cat server.
6) Click on finish.

在此处输入图像描述

然后再试一次

于 2012-12-04T09:10:31.163 回答
1

转到Java Build Path,转到Libraries,单击Add Library,选择Server Runtime,单击Next,选择您的网络服务器,然后单击完成。清理并部署以查看它是否有效。

于 2012-12-04T09:18:24.123 回答