java servlet重新源调度器在正确的位置包含html

java servlet重新源调度器在正确的位置包含html,java,html,jsp,servlets,Java,Html,Jsp,Servlets,我有一个非常基本的登录servlet @WebServlet("/LoginServlet") public class LoginServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doPost(HttpServletRequest request, HttpServletResponse response) thro

我有一个非常基本的登录servlet

@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    protected void doPost(HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException {

        // get request parameters for userID and password
        String username = request.getParameter("username");
        String password = request.getParameter("password");

        if (username.equals("marti") && password.equals("bosch")) {
            response.sendRedirect("login_success.jsp");
        } else {
            RequestDispatcher rd = getServletContext().getRequestDispatcher(
                    "/login.html");
            PrintWriter out = response.getWriter();
            out.println("<font color=red>Either user name or password is wrong.</font>");
            rd.include(request, response);
        }
    }
}
@WebServlet(“/LoginServlet”)
公共类LoginServlet扩展了HttpServlet{
私有静态最终长serialVersionUID=1L;
受保护的void doPost(HttpServletRequest请求,
HttpServletResponse响应)引发ServletException,IOException{
//获取用户ID和密码的请求参数
字符串username=request.getParameter(“用户名”);
字符串密码=request.getParameter(“密码”);
if(username.equals(“marti”)&password.equals(“bosch”)){
sendRedirect(“login_success.jsp”);
}否则{
RequestDispatcher rd=getServletContext().getRequestDispatcher(
“/login.html”);
PrintWriter out=response.getWriter();
println(“用户名或密码错误。”);
包括(请求、响应);
}
}
}
当我从login.html调用servlet时:

<!DOCTYPE html>
<html>
<head>
<title>Login Page</title>
</head>
<body>
    <form action="LoginServlet" method="post">
        <p>Username: <input type="text" name="username"> </p>
        <p>Password: <input type="password" name="password"> </p>
        <p><input type="submit" value="Login"></p>
    </form>
</body>
</html>

登录页面
用户名:

密码:

如果输入了正确的用户名和密码,浏览器将正确地呈现login_success.jsp。但是,如果我没有输入正确的用户名和密码,浏览器会将未渲染的html显示为纯文本:

<font color=red>Either user name or password is wrong.</font>
<!DOCTYPE html>
<html>
<head>
<title>Login Page</title>
</head>
<body>
    <form action="LoginServlet" method="post">
        <p>Username: <input type="text" name="username"> </p>
        <p>Password: <input type="password" name="password"> </p>
         <p><input type="submit" value="Login"></p>
    </form>
</body>
</html>
用户名或密码错误。
登录页面
用户名:

密码:


如何使LoginServlet将消息放在正确的位置(正文标记之后)?非常感谢,您需要将其作为HTML文档的内容:


登录页面
用户名或密码错误。
用户名:

密码:


当然可以,但我的意思是如何从LoginServlet中放置此消息。关于字体标记,我刚刚从教程中复制了代码,当我了解更多关于Java servlet的内容时,我将使用正确的HTML5。无论如何谢谢你。我第一次误读了你的问题,抱歉:)好吧,从这里我想没有办法使用out.println()方法向特定位置添加字符串,这正是我想知道的。谢谢