Извините, если это общий вопрос, но я сойду с ума. Я начинаю с разработки JSP, используя Tomcat, работающий на сервере Ubuntu. Я пытаюсь запустить свой первый сервлет «Hello World» без успеха.Ошибка отображения сервлетов Tomcat 404
У меня есть следующие вещи на сервере:
- каталог
webapps
является:/var/lib/tomcat6/webapps/
- в
webapps
я создал контекстно-Roothello/
списочный hello/
содержитindex.html
иWEB-INF/
WEB-INF
содержитweb.xml
иclasses/HelloServlet.class
Это index.html
:
<html>
<body>
Click to request the HelloServlet.
<form action = "/hello/helloworld" method = "get" >
<input type = "submit" value = "REQUEST" />
</form>
</body>
</html>
Это WEB-INF/web.xml
:
<?xml version="1.0" encoding="ISO-8859-1"?>
<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>test</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/hello/helloworld</url-pattern>
</servlet-mapping>
</web-app>
и, наконец, это исходный файл HelloServlet
:
// HelloServlet.java, a simple Hello World servlet.
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class HelloServlet extends HttpServlet
{
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter outputStream = response.getWriter();
outputStream.println("<html>");
outputStream.println("<head>");
outputStream.println("<title>Hello, World!</title>");
outputStream.println("</head>");
outputStream.println("<body>");
outputStream.println("Hello, world! This is my first servlet!");
outputStream.println("</body>");
outputStream.println("</html>");
outputStream.close();
}
}
Проблема заключается в том, что, на стороне клиента, только http://localhost/hello/
(т. Е. Страница index.html
). Если я нажму кнопку формы-отправки, я получаю ошибку http 404 (ресурс недоступен).
Возможно, есть ошибка в сервлет-сопоставлении в форме и/или в web.xml
, но мне действительно нужна помощь в ее обнаружении.
Включите имя пакета в тег '' ex. 'org.firstservletapp.HelloServlet' –
Meherzad