tomcat60配置文件.docx
《tomcat60配置文件.docx》由会员分享,可在线阅读,更多相关《tomcat60配置文件.docx(11页珍藏版)》请在冰豆网上搜索。
tomcat60配置文件
tomcat6.0配置
第一步:
下载jdk和tomcat:
JDK下载 Tomcat下载
最新的jdk为1.6.10,tomcat为6.0,建议jdk1.4以上,tomcat4.0以上
第二步:
安装和配置你的jdk和tomcat:
执行jdk和tomcat的安装程序,然后设置按照路径进行安装即可。
1.安装jdk以后,需要配置一下环境变量,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的jdk安装在C:
\ProgramFiles\Java):
JAVA_HOME=C:
\ProgramFiles\Java\jdk1.6.0_10
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;一定不能少,因为它代表当前路径)
path=%JAVA_HOME%\bin
接着可以写一个简单的java程序来测试JDK是否已安装成功:
publicclassTest{
publicstaticvoidmain(Stringargs[]){
System.out.println("Thisisatestprogram.");
}
}
将上面的这段程序保存为文件名为Test.java的文件。
然后打开命令提示符窗口,cd到你的Test.java所在目录,然后键入下面的命令
javac Test.java
java Test
此时如果看到打印出来This is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。
2.安装Tomcat后,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的tomcat安装在c:
\tomcat):
CATALINA_HOME:
c:
\tomcat
CATALINA_BASE:
c:
\tomcat
TOMCAT_HOME:
C:
\Tomcat
然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的servlet.jar追加到classpath中去,修改后的classpath如下:
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet-api.jar;
【注意最新版本的Tomcat中可能没有common这个文件夹了。
所以servlet-api.jar应该的路径为
%CATALINA_HOME%\lib\servlet-api.jar;请根据自己的情况自己修改!
】
接着可以启动tomcat,在IE中访问http:
//localhost:
8080,如果看到tomcat的欢迎页面的话说明安装成功了。
第三步:
建立自己的jsp app目录
1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples, tomcat-docs之类Tomcat自带的的目录;
2.在webapps目录下新建一个目录,起名叫myapp;
3.myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的;
4.WEB-INF下新建一个文件web.xml,内容如下:
xmlversion="1.0"encoding="ISO-8859-1"?
>
DOCTYPEweb-app
PUBLIC"-//SunMicrosystems,Inc.//DTDWebApplication2.3//EN"
"
MyWebApplication
Aapplicationfortest.
5.在myapp下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下:
Nowtimeis:
<%=newjava.util.Date()%>
6.重启Tomcat
7.打开浏览器,输入http:
//localhost:
8080/myapp/index.jsp看到当前时间的话说明就成功了。
第四步:
建立自己的Servlet:
写入你的第一个Servlet:
在你新建的Applicationmyapp/WEB-INF/classes/test目录下新建HelloWorld.java
packagetest;
importjava.io.*;
importjavax.servlet.*;
importjavax.servlet.http.*;
publicclassHelloWorldextendsHttpServlet
{
publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException
{
response.setContentType("text/html");
PrintWriterout=response.getWriter();
out.println("
"); out.println("ThisismyfirstServlet");
out.println("
");
out.println("
Hello,World!
");
out.println("");
}
}
然后照样用javacHelloWorld.java来编译这个文件,如果出现无法importjavax.servl
et.*
那么就是应该把C:
\Tomcat\common\lib里面的servlet-api.jar文件拷贝到C:
\JDK\jre\lib\ext中,再次编译,就没有问题了!
然后在Tomcat目录里面的C:
\Tomcat\webapps\myapp里面按如下的文件结构:
myapp\index.jsp
myapp\WEB-INF\classes\test\HelloWorld.class(把上面生成的HelloWorld.class文件放在这个
里面)
然后在浏览器中输入http:
//localhost:
8080/myapp/HelloWorld,于是Server众望所归的报错了:
Error404--NotFound
怎么回事呢?
Servlet必须使用C:
\Tomcat\webapps\myapp\WEB-INF这个目录下面的web.xml文件进行注册,
用EditPlus打开这个web.xml文件,
在添加下面这段程序:
HelloWorld
test.HelloWorld
HelloWorld
/HelloWorld
为什么呢?
因为这样的结构
HelloWorld
test.HelloWorld//类的路径
表示指定包含的servlet类.
而以下的结构
HelloWorld
/HelloWorld
表示指定HelloServlet应当映射到哪一种URL模式。
在修改web.xml完毕过后,重新启动Server,然后再输入http:
//localhost:
8080/myapp/HelloWorld,,那么偌大一个Hello,World!
等
着你呢,恭喜你!
第五步:
建立自己javaBean
1.在你新建的Applicationmyapp/WEB-INF/classes/test目录下新建TestBean.java
packagetest;
publicclassTestBean
{
privateStringname=null;
publicTestBean(StringnameInit){
this.name=nameInit;
}
publicvoidsetName(StringnewName){
this.name=newName;
}
publicStringgetName(){
returnthis.name;
}
}
然后照样用javacTestBean.java来编译这个文件。
2.然后在你新建的应用程序目录myapp下新建一个新的jsp文件:
testBean.jsp
<%@pageimport="test.TestBean"%>
TestBean<%
TestBeantestBean=newTestBean("Http:
//");
%>
JavaBeanTest:
Theauthor'sblogaddressis<%=testBean.getName()%>
好了,确定各个文件的位置:
myapp\index.jsp
myapp\testBean.jsp
myapp\WEB-INF\web.xml
myapp\WEB-INF\classes\test\HelloWorld.class
myapp\WEB-INF\classes\test\TestBean.class
3.重启Tomcat如果需要的话,在浏览器输入:
http:
//localhost:
8080/myapp/testBean.jsp 幸运的话就会看到:
JavaBeanTest:
Theauthor'sblogaddressisHttp:
//
这样就完成了整个Tomcat下的jsp、servlet和javabean的配置。
第六步:
配置虚拟目录
打开Tomcat6.0\conf\server.xml文件,在和之间加入
\myapp"debug="0"reloadable="true"crossContext="true"/>
以上配置的源代码:
文件:
myapp.rar
大小:
3KB
下载:
下载
附注:
2008年4月11日---------全面整理
2008年9月6日--------------修改J2sdk为JDK,避免读者误解。
Tomcat6.0服务器server.xml配置文件
使用Tomcat,如果对它的配置不能深入地理解,在实际工作中可能会遇到一些问题。
当安装完Tomcat6.0以后,默认的conf/server.xml文件,去掉注释以后,如下所示:
xmlversion='1.0'encoding='utf-8'?
>
type="org.apache.catalina.UserDatabase"
description="Userdatabasethatcanbeupdatedandsaved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml"/>
connectionTimeout="20000"
redirectPort="8443"/>
resourceName="UserDatabase"/>
unpackWARs="true"autoDeploy="true"
xmlValidation="false"xmlNamespaceAware="false">
下面基于这样一个基础的配置并结合Tomcat的体系结构,来说明各个配置元素的含义。
关于Tomcat的体系结构,可以参考文档docs/architecture/overview.html。
元素
元素表示的是整个CatalinaServlet容器,在conf/server.xml中是最顶层的配置元素,也就是说,使用TomcatWEB服务器是基于这样一个容器的,能够容纳各种资源、连接、虚拟主机等等。
当然,如果你实现了org.apache.catalina.Server接口,也可以在server.xml中配置元素,是启动容器为自己实现的,这需要在元素中配置指定的属性。
实现org.apache.catalina.Server接口,必须支持该接口定义的三个属性:
className、port、shutdown。
className属性
指明实现org.apache.catalina.Server接口的类,如果在元素中没有指定className的值,就会默认指定className="org.apache.catalina.core.StandardServer",使用标准的实现类。
port属性
指定TCP/IP端口号,通过该端口号可以与Tomcat服务器进行通信,比如执行shutdown命令来关闭Tomcat服务器。
shutdown属性
通过为sutdown指定一个字符串,可以通过发送该字符串作为消息来关闭Tomcat服务器。
对于上面的配置文件中,元素配置如下:
显然省略了className属性,使用默认的org.apache.catalina.core.StandardServer,端口号为8005,通过建立的TCP/IP连接,可以使用命令向端口8085发送消息,来影响Tomcat服务器的行为,例如关闭服务器。
shutdown="SHUTDOWN",如果Tomcat在启动以后,接收到端口8085发送的消息为SHUTDOWN,则开始执行关闭的动作。
元素
元素是元素的顶层配置,从元素的含义来看,元素表示存活于一个顶层的CatalinaServlet容器中的组件,其中,一个元素中可以配置一个或者多个元素。
作为组件,应该通过某种方式来提供一定的服务。
其中,作为一个服务组件,必须实现org.apache.catalina.Service接口。
默认,Tomcat实现了一个标准的服务器组件,具体实现类为org.apache.catalina.core.StandardService。
一个元素可以配置两个属性:
className属性
默认使用Tomcat实现了标准服务组件,当然可以定义自己的服务组件,并在元素中配置指定。
name属性
用来标识在元素中唯一的一个服务组件。
从上面的配置文件可以看到,元素的配置块:
connectionTimeout="20000"
redirectPort="8443"/>
resourceName="UserDatabase"/>
unpackWARs="true"autoDeploy="true"
xmlValidation="false"xmlNamespaceAware="false">
元素
元素表示连接器,是容器与外部进行交互信的桥梁。
该元素定义的连接器是在一个元素表示的组件中,一个元素中可以配置多个连接器元素,表示提供服务的组件通过不同的连接方式与容器外部进行通信,从而完成一定的操作。
通过上面配置可以看到,配置了两个连接器,一个是基于HTTP协议的连接器,一个是基于AJP协议的连接器。
上面元素属性包括port、protocol、redirectPort、connectionTimeout,分别表示端口号、通信协议、重定向端口号、连接超时时间。
元素可以配置的属性非常多,这是由连接的特点所决定的,可以对连接的状态进行详细设置。
可以参考Tomcat文档docs/config/http.html。
元素
元素表示CatalinaServlet容器中针对元素定义的服务,执行请求处理的一个引擎。
当然作为这样一个引擎,它可能将通过元素配置的不同连接方式,接收容器外部请求的数据,经过处理,将处理后的数据,再通过连接器传送给容器外部执行请求的载体,例如用户。
可见,存在一个或者多个连接器绑定在一个引擎上,相互协调完成特定服务定义的功能。
元素可以配置的属性有:
className属性
className属性指定引擎的实现类,可以实现自定义引擎,但是必须实现org.apache.catalina.Engine接口,Tomcat同样实现了默认的标准引擎,通过org.apache.catalina.core.StandardEngine类定义的。
defaultHost属性
指定默认主机。
在一个元素中可以配置多个虚拟主机,每个虚拟主机都通过name属性来识别,但是在元素中必须指定一个在其中存在的主机配置,通过defaultHost来默认指定。
name属性
用来标识该引擎的逻辑名称。
通过从上面的配置可以看到,name="Catalina",defaultHost="localhost",而且localhost已经在元素中存在的元素中配置。
没有指定className属性,表示默认使用org.apache.catalina.core.StandardEngine引擎。
元素
元素表示对虚拟主机进行配置,可以在一个元素中配置多个元素,也就是指定多个虚拟主机。
虚拟主机就是通过域名这样的逻辑名,来定位到物理存在的主机,或者主机上的目录。
同样,如果想自定义主机实现类,可以实现org.apache.c