在创建Web项目之前,要先把Tomcat 和 Eclipse (
Eclipse IDE for Java EE Developers)安装设置好,这个就不多说了,查看:
Tomcat 安装与使用方法。
1. 创建一个新的 Web 项目
1) 在 Eclipse中,选择 File --->New --->Project ----> Web ----> Dynamic Web Project.
2) 设置运行库:
新建web项目选项中,在 Target Runtime 下,可以看到 <None>,由于您尚未为 Apache Tomcat 创建运行库,所以需要单击 New 打开 New Target Runtime Wizard。从 Apache 文件夹中选择 Apache Tomcat V7.0,然后单击 Next。
创建一个新的服务器运行库
可以更改运行库的名称. 单击 Browse 选择 Apache Tomcat 的安装文件夹. JRE一般默认,不用更改.单击 Finish 创建运行库配置。
3) 添加服务器
Servers 视图目前没有包含任何内容。此视图针对的是应用程序和 Web 服务器;它让您可以控制它们并监视其状态。要从 IDE 直接控制 Tomcat,可通过从上下文敏感菜单选择 New -----> Server 来向 Tomcat 添加引用。 New Server 向导将默认指向刚刚创建的那个 Apache Tomcat V7.0 运行库。
2 创建示例页
测试新的动态 Web 项目以及 Tomcat 服务器集成的最简单方法是创建简单的 JSP 并将其部署到 Tomcat。
WebContent单击右键,New ------> JSP File. 将此文件命名为 index.jsp.
新创些建的index.jsp中,系统已以自动添加了一些代码。我们在页面代码添加一个简单的显示日期的功能:
在 Servers 视图,注意到 State 已被设置成 Republish。这是因为自项目上次部署到服务器以来,已经发生了很多更改。右键单击此服务器并从菜单中选择 Publish。一旦项目被部署到此服务器,状态就会变成 Synchronized。
项目成功部署且服务器成功启动之后,可以打开浏览器并导航到 http://localhost:8080/ExampleOne/index.jsp。您所创建的新的 Web 页会随即出现,且日期应该是当前日期。如果刷新页面,日期还会随之变化。
向项目添加 Java servlets 并部署
New ------> Other。在 Web 文件夹下,选择 Servlet,然后单击 Next。
将包名称 com.example.servlets 添加到 Java Package 旁,将 HelloServlet 添加到 Class name 旁。单击 Finish。作为示例,可以保留默认值。Eclipse IDE 会生成一个 servlet 类。要查看应用当中的这个测试用 servlet,可以在 doGet() 方法中添加一行代码来向 ResponseWriter 打印消息。servlet 类应该类似如下所示的这个。
3 Web项目部署的两种方法
配置3个地方:
1、选择"Use Tomcat installation ",默认为"Use Workspace metadata "。
2、选中"Use Tomcat insallation "后,下面一行,Server Path 自动修改为C:\Tomcat 6.0(Tomcat安装路径),这个为C:\Tomcat 6.0就可以的;
3、Deploy Path 处需要修改为"webapps" ,默认为"wtpwebapps"。
以后,运行一下项目,就会自动部署到Tomcat的Webapps文件夹下了.
方法二:把项目打包成*.War文件
在login2项目上,选择"Export" , 导出为WAR文件,比如命名为login2.War,然后复制这个login2.WAR文件到C:\Tomcat 6.0\webapps下,停止Tomcat服务,重新启动Tomcat服务,login2.war会自动解压出一个文件夹login2,再打开http://127.0.0.1:8080/login2/index.jsp就可以访问了,测试能否实现某功能。
遇到的问题:
1. JavaWeb: 报错信息The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
1. 创建一个新的 Web 项目
1) 在 Eclipse中,选择 File --->New --->Project ----> Web ----> Dynamic Web Project.
2) 设置运行库:
新建web项目选项中,在 Target Runtime 下,可以看到 <None>,由于您尚未为 Apache Tomcat 创建运行库,所以需要单击 New 打开 New Target Runtime Wizard。从 Apache 文件夹中选择 Apache Tomcat V7.0,然后单击 Next。
创建一个新的服务器运行库
可以更改运行库的名称. 单击 Browse 选择 Apache Tomcat 的安装文件夹. JRE一般默认,不用更改.单击 Finish 创建运行库配置。
3) 添加服务器
Servers 视图目前没有包含任何内容。此视图针对的是应用程序和 Web 服务器;它让您可以控制它们并监视其状态。要从 IDE 直接控制 Tomcat,可通过从上下文敏感菜单选择 New -----> Server 来向 Tomcat 添加引用。 New Server 向导将默认指向刚刚创建的那个 Apache Tomcat V7.0 运行库。
单击 Next。系统提问您是否想要向服务器添加项目。选择在之前的步骤中创建的那个项目,然后单击 Add。
单击 Finish 关闭向导。现在,Servers 视图包含了 Tomcat V7.0 Server,且其下还包含项目。2 创建示例页
测试新的动态 Web 项目以及 Tomcat 服务器集成的最简单方法是创建简单的 JSP 并将其部署到 Tomcat。
WebContent单击右键,New ------> JSP File. 将此文件命名为 index.jsp.
新创些建的index.jsp中,系统已以自动添加了一些代码。我们在页面代码添加一个简单的显示日期的功能:
%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>My Title</title>
</head>
<body>
<% java.util.Date d = new java.util.Date(); %>
<h1>
Today's date is <%= d.toString() %> and this jsp page worked!
</h1>
</body>
</html>
部署此页
在 Servers 视图,注意到 State 已被设置成 Republish。这是因为自项目上次部署到服务器以来,已经发生了很多更改。右键单击此服务器并从菜单中选择 Publish。一旦项目被部署到此服务器,状态就会变成 Synchronized。
项目成功部署且服务器成功启动之后,可以打开浏览器并导航到 http://localhost:8080/ExampleOne/index.jsp。您所创建的新的 Web 页会随即出现,且日期应该是当前日期。如果刷新页面,日期还会随之变化。
向项目添加 Java servlets 并部署
New ------> Other。在 Web 文件夹下,选择 Servlet,然后单击 Next。
将包名称 com.example.servlets 添加到 Java Package 旁,将 HelloServlet 添加到 Class name 旁。单击 Finish。作为示例,可以保留默认值。Eclipse IDE 会生成一个 servlet 类。要查看应用当中的这个测试用 servlet,可以在 doGet() 方法中添加一行代码来向 ResponseWriter 打印消息。servlet 类应该类似如下所示的这个。
public class ExampleServlet extends javax.servlet.http.HttpServlet
implements javax.servlet.Servlet {
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#HttpServlet()
*/
public HelloServlet() {
super();
}
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#doGet(HttpServletRequest request,
HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.getWriter().write("Hello, world!");
}
/* (non-Java-doc)
* @see javax.servlet.http.HttpServlet#doPost(HttpServletRequest request,
HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
}
}
添加此 servlet 后,Eclipse IDE 会提示项目有所更改。重新查看一下 Servers 视图;Restart 现在出现在 Tomcat 服务器旁的 Status 列。要重启此服务器,右键单击 Servers 视图中的此服务器,然后选择
Restart------ > Start
。 打开浏览器并导航到 http://localhost:8080/Example/ExampleServlet。文本 "Hello, world!" 将会出现在浏览器窗口中。您可以添加日期,将与 index.jsp 文件中的类似的代码添加到
doGet()
方法,并使用 Eclipse IDE 重新部署 servlet。
3 Web项目部署的两种方法
方法一:自动部署
目标就是让ECLIPSE自动部署项目到tomcat的C:\Tomcat 6.0\webapps下,而不是到工作区下的.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps,可以实现,方法很简单。
配置3个地方:
1、选择"Use Tomcat installation ",默认为"Use Workspace metadata "。
2、选中"Use Tomcat insallation "后,下面一行,Server Path 自动修改为C:\Tomcat 6.0(Tomcat安装路径),这个为C:\Tomcat 6.0就可以的;
3、Deploy Path 处需要修改为"webapps" ,默认为"wtpwebapps"。
以后,运行一下项目,就会自动部署到Tomcat的Webapps文件夹下了.
方法二:把项目打包成*.War文件
在login2项目上,选择"Export" , 导出为WAR文件,比如命名为login2.War,然后复制这个login2.WAR文件到C:\Tomcat 6.0\webapps下,停止Tomcat服务,重新启动Tomcat服务,login2.war会自动解压出一个文件夹login2,再打开http://127.0.0.1:8080/login2/index.jsp就可以访问了,测试能否实现某功能。
遇到的问题:
1. JavaWeb: 报错信息The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
原来Javaweb工程类中没有添加Tomcat运行时相关类导致。
下面是具体的解决方法:
右击web工程-》属性或Build Path-》Java Build Path->Libraries-> Add Libray...->Server Runtime -》Tomcat Server.