向Servlet提交登录信息

时间:2015-03-06 17:02:36

标签: java tomcat servlets submit

我再一次被我的代码困住了。 我想写一个简单的登录。 具有登录名的网站由servlet生成,一旦插入登录信息,就应该将其发回给它。 这工作正常,如果我直接在Eclipse中执行它,但如果尝试在浏览器中访问该程序,绝对没有任何反应。我单击“登录”按钮,它根本没有发生任何事情。我想,从网站到Servlet的某个地方有一个缺失的链接,但我无法弄清楚在哪里。

servlet被称为" Main.java"并在tomcat服务器上执行 这是生成登录的doGet()中的代码:

String s="<h1>Welcome</h1><p><form action=\"Main\" method=\"post\"></p><p>User: <input type=\"text\" name=\"user\"><br></p><p>Password: <input type=\"password\" name=\"pass\"><br></p><p><input type=\"submit\" value=\"Login\"</form></p>";

这是doPost()的代码,其中应该输入:

    PrintWriter writer= response.getWriter();
    String user=request.getParameter("user");
    String pass=request.getParameter("pass");
    System.out.println(user);
    System.out.println(pass);
    String dbuser="asdf";
    String dbpass="asd";
    if (user.equals(dbuser) && pass.equals(dbpass)){
        writer.println("<html><head></head><body>Logged in! <br>" + user + "<br>" + pass);
    } else{
        writer.println("<html><head></head><body>Wrong Login! <br>" + user + "<br>" + pass);

1 个答案:

答案 0 :(得分:0)

您的html缺少登录输入的结束括号。 应该是:

String s="<h1>Welcome</h1><p><form action=\"Main\" method=\"post\"></p>   <p>User: <input type=\"text\" name=\"user\"><br></p><p>Password: <input type=\"password\" name=\"pass\"><br></p><p><input type=\"submit\" value=\"Login\"></form></p>";