2016-01-22 7 views
-1

Я пытаюсь запустить свой первый сервлет с html-файлом. В web.xml я есть:Сервлет + HTML-файл

<?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>SimpleServletProject</display-name> 
    <servlet> 
    <servlet-name>XMLServlet</servlet-name> 
    <servlet-class>org.antilamer.XMLServlet</servlet-class> 
    </servlet> 

    <servlet-mapping> 
    <servlet-name>XMLServlet</servlet-name> 
    <url-pattern>/XMLServlet</url-pattern> 
    </servlet-mapping> 

</web-app> 

Servlet класс:

package org.antilamer; 

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 XMLServlet extends HttpServlet { 

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
     response.setContentType("text/html"); 
     PrintWriter out = response.getWriter(); 
     String username = request.getParameter("username"); 
     out.println("Hello! " + username); 
    } 


} 

И Finaly мой HTML-файл:

<!DOCTYPE html> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8"> 
</head> 
<body> 
<form action="XMLServlet"> 

    <input name="username"> 
    <input type="submit"> 

</form> 
</body> 
</html> 

Но у меня есть небольшая проблема, мой сервлет работает, но я не У вас есть html-файл. Это не отображается. Я думал о проблеме в сервлет-сопоставлении, но я использую URL-адрес по умолчанию и понятия не имею, почему он не работает.

+1

Как вы ожидаете получить файл html? Подробнее о сервлетах и ​​jsps. –

+0

Я смотрел этот учебник: https://www.youtube.com/watch?v=MnUJl3NYRRc&index=6&list=PLE0F6C1917A427E96. Этот парень имеет эти входы прямо в браузере. –

+0

Вам необходимо изменить свой web.xml или переслать свой запрос следующим образом (пересекающийся в шаблоне MVC): http://alvinalexander.com/blog/post/servlets/forwarding-from-servlet-jsp –

ответ

0

Имя файла HTML, например index.html и добавьте следующие строки в web.xml <welcome-file-list> <welcome-file>index.html</welcome-file> </welcome-file-list>

Имя файла HTML должен соответствовать один в списке радушны-файлов. Кроме того, если этот html-файл указан в списке приветственных файлов, подобных этому (без какого-либо пути), он должен находиться в каталоге Web Root (например, WebContent).

Смежные вопросы