我是一个java新手,对于tomcat的使用,真是烦透了,搞了很久还没有搞定,今天早上终于通过比较,总结搞定了tomcat中的servlet的配置,写一下经验,也免得兄弟们到处找了。
我的tomcat是5.0.16
前提是你已经安装好了jdk,并且是已经在/etc/profile里设置了一些变量,
我是这样设置的:
export JAVA_HOME=/usr/java/j2sdk1.4.2_02
export JRE_HOME=/usr/java/j2sdk1.4.2_02/jre
export CLASSPATH=/usr/java/j2sdk1.4.2_02/lib/tools.jar:/usr/java/j2sdk1.4.2_02/lib/dt.jar:/usr/java/j2sdk1.4.2_02/lib/htmlconverter.jar:./:/usr/java/j2sdk1.4.2_02/jre/lib/charsets.jar:/usr/java/j2sdk1.4.2_02/jre/lib/jce.jar:/usr/java/j2sdk1.4.2_02/jre/lib/jsse.jar:/usr/java/j2sdk1.4.2_02/jre/lib/plugin.jar:/usr/java/j2sdk1.4.2_02/jre/lib/rt.jar:/usr/java/j2sdk1.4.2_02/jre/lib/sunrsasign.jar:/usr/java/j2sdk1.4.2_02/jre/lib:/usr/local/ant/lib/ant.jar:/usr/local/ant/lib/optional.jar:/usr/local/ant/lib/xercesImpl.jar:/usr/local/ant/lib/xml-apis.jar:/usr/java/mysql/mysql-connector-java-3.0.9-stable-bin.jar:/usr/local/server/pgsql/share/java/postgresql.jar:/usr/local/server/pgsql/share/java/postgresql-examples.jar
export ANT_HOME=/usr/local/ant
export CATALINA_HOME=/usr/local/server/tomcat
export PATH=$PATH:/usr/java/j2sdk1.4.2_02/bin:/usr/java/j2sdk1.4.2_02/jre/bin:/usr/local/ant/bin:/usr/local/server/pgsql/bin:/usr/local/server/mysql/bin:/usr/local/server/apache/bin:/usr/local/bxviewer
从网上下载回来,解压到我的/usr/local/server/tomcat里。
我的习惯是新建一个用户和用户组来管理这个服务,新建一个tomcat用户指定其家目录为:/usr/local/server/tomcat.
su tomcat
cd ~
cd bin
./startup.sh
启动游览器:http://127.0.0.1:8080
看到了tomcat的默认主页,OK,你成功了。
然后停止它,./shutdown.sh
你现需要配置一个你自己的应用程序。
进入conf,
vi server.xml
加入如下行:
<Context path="/myjsp" docBase="/home/ghw/myjsp" debug="0" reloabable="true" />
解释一下 path,这个参数的意思即是指定你的url, 比如你可以使用这样的url来访问:
http://127.0.0.1:8080/myjsp,它可访你的java脚本和小程序。
进入到/home/ghw里新建一个目录myjsp,再进入myjsp中新建一个目录:WEB-INF,
在WEB-INF里新建一个目录:classes,注意以后你的bean, servlet都是要放到这个classes里去的。
般来说为了安全不要去修改tomcat的配置文件web.xml关于invoke部分。
然后你在WEB-INF里新建一个文件:web.xml
内容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app>
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>HelloWorldExample</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
这是一个xml文档:第一句不用解释了,指定这是一个xml文档。
web-app是sun的dtd里规定的一个标记,servlet定义一个小程序,servlet-name给小程序起一个名字,可以使用这个名字来访问它,servlet-class指定实际将运行的类名字,servlet-mapping指定这个servelet的映射,url-pattern这个就很清楚了,它是相对你的web应用路径的。
然后你将tomcat本身自带的一个例子HelloWorldExamples.* 拷到你的myjsp/WEB-INF/classes里。 注意:你还得将如下几个文件也拷到这个目录里:
LocalStrings_en.properties LocalStrings_fr.properties
LocalStrings_es.properties LocalStrings.properties
没有它们在运行的时候,不能对本地字符串进行转换从而出现异常。
好了,再次启动你的tomcat, 运行: ttp://127.0.0.1:8080/myjsp/hello
就可以看到你的servlet小程序的hello, world了。