在tomcat 6.0中运行servlet程序

时间:2010-03-20 17:32:41

标签: java servlets web-applications tomcat6

如何在tomcat 6.0中运行servlet程序?

2 个答案:

答案 0 :(得分:7)

首先,您需要在Web部署描述符(web.xml文件)中声明您的servlet,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  version="2.5">
  <display-name>Archetype Created Web Application</display-name>
  <servlet>
    <servlet-name>HelloWorldExample</servlet-name>
    <servlet-class>cnx.mywebapp.HelloWorldExample</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>HelloWorldExample</servlet-name>
    <url-pattern>/hello</url-pattern>
  </servlet-mapping>
</web-app>

基本上,我们的想法是在servlet元素中声明servlet的完全限定名称,并将其映射到servlet-mapping中的url模式(映射是通过唯一的servlet名称完成的) )

然后,您需要将整个(servlet .class文件和部署描述符)打包到具有已定义结构的Web应用程序存档(具有.war扩展名)中:

mywebapp
|-- WEB-INF
|   |-- classes (java classes, including your servlet, go here)
|   |-- lib     (jar dependencies go here)
|   `-- web.xml (this is the deployment descriptor) 
`-- index.jsp

最后,在Tomcat的webapps目录中部署(复制).war。要访问servlet:

http://localhost:8080/mywebapp/hello
           A       B     C       D

其中:

  • A是Tomcat运行的主机名(本地机器)
  • B是Tomcat正在侦听的端口(默认为8080)
  • C是访问webapp的上下文路径(默认情况下为war的名称)
  • D是在web.xml中声明的用于调用servlet的模式

答案 1 :(得分:1)

通过构建一个webapp并将其放入webapp根目录,就像在另一个版本的tomcat或任何其他servlet容器中一样。

相关问题