我是servlets新手。我已經在Ubuntu14.04上安裝了Tomcat7,並且服務運行良好。但它給servlet(http://localhost:8080/hello/HelloServlet)提供404(未找到)錯誤。應用程序中的html運行良好。 Tomcat管理工具也是如此。Ubuntu14.04的Tomcat7可以正常工作,但servlet的404錯誤
任何想法我做錯了什麼?
Tomcat的webapps結構: 的/ var/lib中/ tomcat7/web應用
webapps
|-- ROOT
|-- hello
| |-- index.html
| `-- WEB-INF
| |-- classes
| | |-- HelloServlet.class
| | `-- HelloServlet.java
| |-- lib
| `-- web.xml
|-- index.html
`-- META-INF
`-- context.xml
的web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<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/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>
</web-app>
HelloServlet.java:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.WebServlet;
@WebServlet(name="HelloServlet", urlPatterns={"/HelloServlet"})
public class HelloServlet extends HttpServlet{
private String message;
public void init() throws ServletException{
message = "Hello World";
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<h1>" + message + "</h1>");
}
public void destroy(){
}
}
您試圖訪問哪個網址? – Garry
您是否嘗試過:http:///hello/HelloServlet? –
Lexandro
http:// localhost:8080/hello/HelloServlet給出了404錯誤。對不起,我錯過了這個問題中的重要部分。 – sariDon