- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Servlet 无法在 Eclipse Juno for Java EE 中新创建的动态 Web 项目中运行。这是从头开始的过程:
budget
)index.jps
,里面有“it works!”)此刻,在将项目添加到服务器并运行它之后,我可以在屏幕上看到“它工作了!”。因此,部署有效。
接下来我添加了 servlet 文件(control.Controller.java
):
package control;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet({ "/Controller", "*.do" })
public class Controller extends HttpServlet {
private static final long serialVersionUID = 1L;
public Controller() {
super();
}
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
System.out.println("doGet()");
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
System.out.println("doPost()");
}
}
我将 index.jsp
改成了这样,仅此而已:
<jsp:forward page="/departments.do"/>
当然还有 web.xml
:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>UniBudget</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<!-- servlet definition -->
<servlet>
<servlet-name>Do</servlet-name>
<servlet-class>control.Controller</servlet-class>
</servlet>
<!-- servlet mapping -->
<servlet-mapping>
<servlet-name>Do</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Do</servlet-name>
<url-pattern>/Controller</url-pattern>
</servlet-mapping>
</web-app>
生成的 .class
文件必须在 WEB-INF/classes
中,对吗?这就是我读到的。所以: Configure Build Path > Source 选项卡 > Browse >
我在 WEB-INF
中创建了 classes
文件夹(在 Advanced
我链接到文件系统中的文件夹:.../UniBudget/build/classes
)
这是项目中的文件层次结构:
我清理并构建了 UniBudget 项目并重新发布到服务器。清理服务器。
我想我现在可以工作了(我的意思是在控制台中显示“doGet()” 或“doPost()”)。但是我没有在控制台中打印输出,而是收到了这个错误:
HTTP Status 404 - /budget/departments.do
--------------------------------------------------------------------------------
type: Status report
message: /budget/departments.do
description: The requested resource is not available.
当我尝试直接访问 http://localhost:8080/budget/Controller
(无需从 index.jsp
重定向)时,也会发生同样的情况
看起来 Eclipse 根本看不到 servlet!你能指出我在哪里犯了错误吗?我现在好几个小时都想不通了。
编辑:
去掉多余注解(@WebServlet
)后,又出现一个错误:
HTTP Status 503 - Servlet Do is currently unavailable
--------------------------------------------------------------------------------
type Status report
message Servlet Do is currently unavailable
description The requested service is not currently available.
控制台错误:
wrz 24, 2012 9:34:15 PM org.apache.catalina.core.ApplicationDispatcher invoke
WARNING: Servlet Do is currently unavailable
不多。但仅此而已。
编辑:
我发现这里又发生了另一个错误。我什至不确定如何重新创建它,但至少这个提供了更多日志信息:
HTTP Status 500 - An exception occurred processing JSP page /index.jsp at line 3
--------------------------------------------------------------------------------
type: Exception report
message: An exception occurred processing JSP page /index.jsp at line 3
description: The server encountered an internal error that prevented it from fulfilling this request.
exception:
org.apache.jasper.JasperException: An exception occurred processing JSP page /index.jsp at line 3
1: <%@ page language="java" contentType="text/html; charset=UTF-8"
2: pageEncoding="UTF-8"%>
3: <jsp:forward page="/departments.do"/>
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
root cause:
javax.servlet.ServletException: Error instantiating servlet class control.Controller
org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:746)
org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:716)
org.apache.jsp.index_jsp._jspService(index_jsp.java:65)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
root cause:
java.lang.ClassNotFoundException: control.Controller
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:746)
org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:716)
org.apache.jsp.index_jsp._jspService(index_jsp.java:65)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
编辑:
项目右键单击 > 导出 > WAR 文件
期间出错:
java.lang.NoClassDefFoundError: org/eclipse/wst/web/internal/deployables/IFlatDeployable
at org.eclipse.jst.j2ee.internal.archive.operations.JavaEEComponentExportOperation.getModuleParticipants(JavaEEComponentExportOperation.java:77)
at org.eclipse.jst.j2ee.internal.archive.operations.JavaEEComponentExportOperation.getParticipants(JavaEEComponentExportOperation.java:43)
at org.eclipse.jst.j2ee.internal.archive.operations.JavaEEComponentExportOperation.createFlatComponentArchiver(JavaEEComponentExportOperation.java:91)
at org.eclipse.jst.j2ee.internal.archive.operations.ComponentExportOperation.export(ComponentExportOperation.java:191)
at org.eclipse.jst.j2ee.internal.archive.operations.ComponentExportOperation.execute(ComponentExportOperation.java:136)
at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibleOperationImpl$1.run(DataModelPausibleOperationImpl.java:385)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibleOperationImpl.runOperation(DataModelPausibleOperationImpl.java:410)
at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibleOperationImpl.runOperation(DataModelPausibleOperationImpl.java:360)
at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibleOperationImpl.doExecute(DataModelPausibleOperationImpl.java:247)
at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibleOperationImpl.executeImpl(DataModelPausibleOperationImpl.java:219)
at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibleOperationImpl.cacheThreadAndContinue(DataModelPausibleOperationImpl.java:89)
at org.eclipse.wst.common.frameworks.internal.datamodel.DataModelPausibleOperationImpl.execute(DataModelPausibleOperationImpl.java:207)
at org.eclipse.wst.common.frameworks.internal.datamodel.ui.DataModelWizard$1CatchThrowableRunnableWithProgress.run(DataModelWizard.java:220)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
最佳答案
java.lang.NoClassDefFoundError: org/eclipse/wst/web/internal/deployables/IFlatDeployable
糟糕。这是一个非常严重的错误,这个类是 Eclipse 内部的。这曾被报告为 Eclipse issue 388698 ,但不幸的是,它已作为 WORKSFORME
关闭。毕竟,这似乎是一个特定于环境/平台/配置的问题。我会考虑重新发布相同的问题以及尽可能多的有关所用环境的详细信息(操作系统品牌/版本、JRE/JDK 品牌/版本、硬件规范等)。
我个人还没有尝试过 Juno(我通常等待 SR1 在冬天左右发布,以便涵盖所有主要的初期问题),但是如果完全删除 Eclipse 安装并重新解压缩它不起作用,那么我建议尝试退回到以前的 Eclipse 版本,即 Indigo SR2 .确保为您的平台下载正确的版本(32 位与 64 位)。
关于eclipse - java.lang.NoClassDefFoundError : org/eclipse/wst/web/internal/deployables/IFlatDeployable 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12566170/
在我的other question我spotted a bug在 Eclipse wst.jsdt 中。如果我想自己解决这个问题,需要哪些知识依赖? 我的猜测是: 了解如何使用 CVS 了解如何使用
在 Eclipse 中(我目前正在运行 3.8.0 @ Linux (Mint 14 (Ubuntu (Debian)))),使用 Refactor 重命名变量是一个选项这似乎是随机可用的。对于某些代
我正在使用 Eclipse WTP 开发我的 Spring 应用程序并将其部署在 tomcat 服务器上。 通常我的网络应用程序部署在 tomcat 上,一切正常,但有时,我可以随机地说,我的网络应用
Eclipse 软件安装库包含两个条目 WST server adapters 回答 JST server adapters 没有全面的解释这些是什么。 例如首先解释为 Server adapters
本文整理了Java中org.eclipse.wst.common.frameworks.internal.WTPPlugin类的一些代码示例,展示了WTPPlugin类的具体用法。这些代码示例主要来源
本文整理了Java中org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper类的一些代码示例,展示了WorkbenchR
我在一段时间未使用 Eclipse 后尝试使用它,但出现此错误: !MESSAGE Unable to resolve plug-in "platform:/plugin/org.eclips
本文整理了Java中org.eclipse.wst.common.frameworks.internal.WTPPlugin.start()方法的一些代码示例,展示了WTPPlugin.start()
本文整理了Java中org.eclipse.wst.common.frameworks.internal.WTPPlugin.isPlatformCaseSensitive()方法的一些代码示例,展示
本文整理了Java中org.eclipse.wst.common.frameworks.internal.WTPPlugin.stop()方法的一些代码示例,展示了WTPPlugin.stop()的具
本文整理了Java中org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper.getResourceSet()方法的一些
本文整理了Java中org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper.getProject()方法的一些代码示例
本文整理了Java中org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper.getFile()方法的一些代码示例,展示
注意:我问了这个same question on the Eclipse Web Tools Project (WTP) forum但遗憾的是还没有得到任何回应。我希望有人对 SO 有一些见解。 某处
我正在使用在互联网上找到的这段代码来打开 WST 向导,该向导有助于创建新的 XML 文件。 public void openWizard(String id) { // First see
我有一个 eclipse 工作区(用于工作),它有一个 ear 项目,我用它来将 ear 文件“导出”/部署到 JBoss 服务器。 但是,他们最近要求我创建一个可以构建工作区和创建 ear 的 an
我无法安装 Android 开发工具。我克服了一个涉及全局环境基金的错误。我现在有一个新错误。 缺少要求:Android 开发工具 0.9.6.v201002051504-24846 (com.and
我在 Eclipse 中有一个多模块 Maven Java (WAR) 项目。它依赖于许多其他 Java 项目。我们将 .settings 目录 checkin 源代码管理,因为其中有许多手动建立的设
我已经手动配置了我的 org.eclipse.wst.common.component 以通过 Eclipse WTP 从我的项目的目标目录中部署我的 web 应用程序(所以我的部署包括 JSP 预编
我尝试使用 Eclipse Juno 打开我的 Maven 项目,但收到此错误: An internal error occurred during: "Updating Maven Project"
我是一名优秀的程序员,十分优秀!