我第一次尝试部署test.war
文件。
我在Tomcat 7
上使用apt-get
安装了Ubuntu server 12.04
。
webapps目录位于:/var/lib/tomcat7/webapps
。
Tomcat 7安装在此处:/usr/share/tomcat7
。
我使用test
生成了一个名为Eclipse
的基本Web项目,使用本地Tomcat 7服务器可以正常工作。在项目中,我有一个基本的index.jsp文件和一个Testservlet.java servlet
文件。
使用FTP客户端我已将test.war文件上传到/var/lib/tomcat7/webapps
自动部署的位置。但是如何在Web浏览器中浏览此目录以查看网站?
我之前尝试在/var/lib/tomcat7/webapps/ROOT
目录中移动项目,这样我可以在导航到http://my-host.com:8080/test
时查看index.jsp文件但是当我尝试浏览到时遇到404错误此地址http://my-host.com:8080/Testservlet
的Testservlet页面。
这是Testservlet注释:
@WebServlet(description = "a test servlet", urlPatterns = { "/Testservlet" })
那么在整个过程中我错过了什么?在webapps目录中部署.war文件后,我还需要做些什么才能浏览网站而不必将其放入/ROOT
子目录?
编辑:
导航到http://my-host.com:8080/test/Testservlet时遇到404错误,当我在/var/lib/tomcat7/webapps
部署test.war时导航到http://my-host.com:8080/test。
编辑:
这是测试项目的web.xml。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>test</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
编辑:删除servlet中的注释并将servlet映射添加到web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>test</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>test</servlet-name>
<servlet-class>testpackage.Testservlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/Testservlet</url-pattern>
</servlet-mapping>
</web-app>
编辑:添加了Testservlet.java代码:
package testpackage;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Testservlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
response.setContentType("text/html");
out.println("This is a test servlet");
}
}
编辑:错误日志
- - [26/May/2014:15:19:35 +0100] "GET /Testservlet HTTP/1.1" 404 988
- - [26/May/2014:15:19:35 +0100] "GET /favicon.ico HTTP/1.1" 404 988
- - [26/May/2014:15:43:50 +0100] "GET / HTTP/1.1" 404 955
- - [26/May/2014:15:51:36 +0100] "GET / HTTP/1.1" 404 955
- - [26/May/2014:15:51:40 +0100] "GET /test HTTP/1.1" 404 967
- - [26/May/2014:16:13:12 +0100] "GET /test HTTP/1.1" 404 967
- - [26/May/2014:16:13:20 +0100] "GET /root/test HTTP/1.1" 404 982
- - [26/May/2014:16:16:19 +0100] "GET /test HTTP/1.1" 404 967
- - [26/May/2014:16:16:58 +0100] "GET /test/Testservlet HTTP/1.1" 404 1003
- - [26/May/2014:16:32:09 +0100] "GET / HTTP/1.1" 404 955
- - [26/May/2014:16:35:38 +0100] "GET / HTTP/1.1" 404 955
- - [26/May/2014:16:40:16 +0100] "GET /test HTTP/1.1" 404 967