首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Out.Print方法不起作用?

Out.Print方法不起作用?
EN

Stack Overflow用户
提问于 2015-06-02 06:28:00
回答 4查看 637关注 0票数 0

这是我的密码

LoginController.java

包装mvc.demo.control;

代码语言:javascript
复制
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.servlet.RequestDispatcher;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;

    import mvc.demo.model.Authenticate;


    public class LoginController extends HttpServlet {
        private static final long SerialVersionUID=1L;

        public LoginController()
        {
            super();
        }

        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp)
                throws ServletException, IOException {
            String s1=req.getParameter("username");
            String s2=req.getParameter("password");
            RequestDispatcher rd=null;
            Authenticate au=new Authenticate();
            String result=au.authorise(s1, s2);
            if(result.equals("success"))
            {
                rd=req.getRequestDispatcher("/success.jsp");    
            }
            else
            {
               //This is the point where i try to print error message on jsp.
                PrintWriter out = resp.getWriter(  );
                out.print("Sorry UserName or Password Error!");
                rd=req.getRequestDispatcher("/login.jsp");  
                rd.include(req, resp);  
            }
            rd.forward(req, resp);
        }   
    }

login.jsp

代码语言:javascript
复制
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
        pageEncoding="ISO-8859-1"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Login Page</title>
    </head>
    <body>
        <form method="post" action="LoginController" >  
        UserName:   <input type="text" name="username"><BR><BR>
        PassWord:   <input type="password" name="password"><BR><BR>
                    <input type="submit" />   
        </form>
    </body>
    </html>

请检查在jsp文件上打印错误消息的loginController类的of块,当前,"out.print“方法无法反映我的login.jsp文件。请帮我整理一下这个问题,谢谢。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-06-02 06:50:39

代码语言:javascript
复制
import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import mvc.demo.model.Authenticate;


public class LoginController extends HttpServlet {

    private static final long SerialVersionUID=1L;

    public LoginController()
    {
        super();
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException {

        String s1=req.getParameter("username");
        String s2=req.getParameter("password");
        RequestDispatcher rd=null;

        Authenticate au=new Authenticate();
        String result=au.authorise(s1, s2);

        if(result.equals("success"))
        {
            rd=req.getRequestDispatcher("/success.jsp");

//The error was with this line
            rd.forward(req, resp);
        }
        else
        {

            PrintWriter out = resp.getWriter(  );
            out.print("Sorry UserName or Password Error!");
            rd=req.getRequestDispatcher("/login.html");  
            rd.include(req, resp);  

        }

    }

}
票数 1
EN

Stack Overflow用户

发布于 2015-06-02 06:35:05

您可以在请求属性中设置错误消息,并可以在JSP中获取它。

代码语言:javascript
复制
String errorMsg = "UserName or Password is invalid !";
req.setAttribute("errorMsg", errorMsg);
req.getRequestDispatcher("/login.jsp").forward(req, res);

现在在JSP上

代码语言:javascript
复制
<h2>${errorMsg}</h2>  // Print wherever you need it  
票数 2
EN

Stack Overflow用户

发布于 2015-06-02 06:54:18

在您的代码中看不到out.close()。最后必须关闭PrintWriter对象。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30588879

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档