图解eclipse+tomcat配置jsp开发调试环境

时间:2022-11-28 16:00:20
查看文章
   
【转】  图解eclipse+tomcat配置jsp开发调试环境
2010-08-03 11:25
转载自   yuanzhangcai
最终编辑   yuanzhangcai

这篇文章主要介绍如何利用Sysdeo Eclipse Tomcat Launcher plugin 编辑和调试JSP与Servlet

一. 需要的软件

    Sysdeo Eclipse Tomcat Launcher plugin
     下载       http://www.sysdeo.com/eclipse/tomcatPluginV3.zip    
     这是一个eclipse插件,可以帮助编辑JSP文件。
     安装插件,参考    《links安装Eclipse插件》
 
 
二. 环境配置
     为了编辑和调试JSP文件,环境配置有些麻烦,有几点要注意。
 
1. 检查环境变量的设置。
     右击“我的电脑”->高级->环境变量,
     检查JAVA_HOME,TOMCAT_HOME变量是否指向其安装的目录;
     PATH变量中是否含有“%JAVA_HOME%\bin;”;
     CLASSPATH变量中是否含有“%JAVA_HOME%\lib\tools.jar;”
     
 
2. 将eclipse中java运行环境指向JDK,不是JRE。
     在eclipe主窗口中,“窗口”->首选项->java->已安装的JRE
    图解eclipse+tomcat配置jsp开发调试环境
 
 
3. 配置Sysdeo Tomcat 插件    
    
图解eclipse+tomcat配置jsp开发调试环境
   

Context解释

    Context元素代表一个web应用,运行在某个特定的虚拟主机上。每个web应用基于一个Web Application Archive(WAR)文件,或者是一个目录,包含WAR文件解压后的内容。
    通过将请求URI的最长可能前缀与每个Context的context路径进行匹配,Catalina选择相应的web 应用处理HTTP请求。一旦选定,根据web application deployment descriptor 文件中定义的servlet映射,Context会选择一个正确的servlet来处理进来的请求。servlet映射必须定义在该web应用目录层次结构中的/WEB-INF/web.xml中。
    你可以在一个Host元素中嵌套任意多的Context元素。每个Context的路径必须是惟一的,由path属性定义。另外,你必须定义一个context路径长度为0的Context,这个Context称为该虚拟主机的缺省web应用,用来处理那些不能匹配任何Context的Context路径的请求。
    除了在Host元素中嵌套Context元素以外,你也可以将它们存储在单个文件中(以.xml为后缀),放在$CATALINA_HOME/conf/[enginename]/[hostname]/目录下面。
     (注:Catalina是Tomcat的别称)
 
    切换到Advanced选项
图解eclipse+tomcat配置jsp开发调试环境
 
     切换到JVM Setting选项
图解eclipse+tomcat配置jsp开发调试环境
 
切换到Tomcat Manger App,为管理界面增加一个用户。
 
    图解eclipse+tomcat配置jsp开发调试环境
 
点击“应用”、“确定”即可。
 
4. 将“Tomcat Project”添加到“新建”菜单。
      窗口->定制透视图->快捷方式->新建->Java
     图解eclipse+tomcat配置jsp开发调试环境

三. 编写程序
 
    1.创建一个Tomcat项目。
       右击“包资源管理器”窗口中的空白处,新建->Tomcat Project
    图解eclipse+tomcat配置jsp开发调试环境
  
在项目名中填写:TomcatSample,点击“完成”即可。
 
2.右击“TomcatSample”,新建->文件, 在文件名中填写:index.jsp
    图解eclipse+tomcat配置jsp开发调试环境
 
3.修改index.jsp  

TomcatSample\index.jsp

<%
String s = "Welcome javamxj Blog!";
out.println(s);
%>  
 
4. 点击“运行Tomcat”图标
    图解eclipse+tomcat配置jsp开发调试环境
 
5. 如果一切正常,在浏览器窗口中输入“http://localhost:8080/TomcatSample/index.jsp”
    图解eclipse+tomcat配置jsp开发调试环境
 
 
四. 调试JSP程序
 
    1. 右击TomcatSample项目下的work目录,在弹出菜单中点击“刷新”。点击后,会发现此目录下有文件,打开“index_jsp.java”文件,在右栏中“out.println(s);”语句增加一个断点。
     图解eclipse+tomcat配置jsp开发调试环境
 
    2. 然后刷新浏览器窗口,此时,eclipse会弹出一个窗口,询问是否切换到“debug”视图,选择“是”。
     图解eclipse+tomcat配置jsp开发调试环境
 
    3. 在此视图中,找到变量s,右击,选择“更改值”,在弹出窗口中输入“Sysdeo Tomcat Plugin!”。
     图解eclipse+tomcat配置jsp开发调试环境
 
    4. 点击“继续”按钮。   

图解eclipse+tomcat配置jsp开发调试环境
 
5. 此时,浏览器窗口已经反映出了调试后的变化。
   图解eclipse+tomcat配置jsp开发调试环境
五. 编辑Servlet程序
     在成功编辑和调试JSP的基础上,再进行编辑和调试Servlet程序就比较简单了。
   
     1. 先停止Tomcat服务器。 右击“WEB-INF/src”目录,新建->类,
        填写包名:“javamxj.tomcat.servlet”
        填写类名:“ServletSample”
        点击完成。
     图解eclipse+tomcat配置jsp开发调试环境
 
     2. 修改ServletSample.java如下:    

ServletSample.java

/*
* 创建日期 2004-10-18
* 作者 javamxj (CSDN Blog)
*/
package javamxj.tomcat.servlet;
 
import java.io.*;
 
import javax.servlet.http.*;
import javax.servlet.*;
 
public class ServletSample extends HttpServlet {
    private String s;
 
    public void doGet (HttpServletRequest req, HttpServletResponse res)
          throws ServletException, IOException
    {
          PrintWriter out = res.getWriter();
          String s="Hello, javamxj Blog!";
          out.println(s);
          out.close();
     }
}
 
     3. 在WEB-INF目录下建立一个web.xml文件,保存文件。

WEB-INF/web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
 
<web-app xmlns=" http://java.sun.com/xml/ns/j2ee"
      xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation=" http://java.sun.com/xml/ns/j2ee  web-app_2_4.xsd"
      version="2.4">
    
    <servlet>
      <servlet-name>ServletSample</servlet-name>
      <servlet-class>javamxj.tomcat.servlet.ServletSample</servlet-class>
    </servlet>
  
    <servlet-mapping>
      <servlet-name>ServletSample</servlet-name>
      <url-pattern>/ServletSample</url-pattern>
    </servlet-mapping>
</web-app>
 
    4.启动Tomcat服务器,在浏览器窗口中输入“http://localhost:8080/TomcatSample/ServletSample”
     图解eclipse+tomcat配置jsp开发调试环境
 
 
 
六. 调试Servlet程序
    
    1. 在ServletSample.java文件中添加一个断点,如图:
   图解eclipse+tomcat配置jsp开发调试环境
 
 
    2. 刷新浏览器窗口,切换到eclipse的“调试”视图,如下更改:
    
图解eclipse+tomcat配置jsp开发调试环境
 
 
    3.此时浏览器窗口如下:
   图解eclipse+tomcat配置jsp开发调试环境
 
 
 
 
七. 探讨一下机理   
 
     1. Tomcat目录\conf\server.xml文件中,或者在Tomcat目录\conf\Catalina\localhost存在一个TomcatSample.xml文件, 这两个文件中都应该含有如下语句:
<Context path="/TomcatSample" reloadable="true" docBase="D:\eclipse\workspace\TomcatSample" workDir="D:\eclipse\workspace\TomcatSample\work" />
     (注意,由于eclipse的目录不同,上述语句也将不同。)
 
      2. 在浏览器窗口中输入:“http://localhost:8080/”,点击左边的“Tomcat Manager”链接,会弹出一个窗口,让你输入用户名和密码,在第二大节“环境配置”中的第3小节中,曾经为Tomcat管理界面添加一个用户,输入这个用户的用户名和密码,这里就是“admin”、“javamxj”。
     图解eclipse+tomcat配置jsp开发调试环境
   
     3. 在输入正确的用户名和密码之后,会进入Tomcat管理界面,可以看到,TomcatSample处于运行状态。你可以停止、重载、或卸载它。
 
   图解eclipse+tomcat配置jsp开发调试环境
 
   
4. 现在从eclipse中卸载Context定义
        右击TomcatSample目录->Tomcat Project->Remove context Difinition,如下图:
 
    图解eclipse+tomcat配置jsp开发调试环境
 
   
     5. 此时刷新Tomcat管理界面的浏览器窗口,会发现“/TomcatSample”已经消失了。同时,
“<Context path="/TomcatSample" reloadable="true" docBase="D:\eclipse\workspace\TomcatSample" workDir="D:\eclipse\workspace\TomcatSample\work" /> ” 这个语句也消失了。
   
     6. 要重新把“/TomcatSample”添加到Tomcat应用中去,需要右击TomcatSample目录->Tomcat Project->Update context Difinition,然后重启Tomcat。