servlet向jsp发送null响应

时间:2011-06-24 06:50:12

标签: jsp servlets

 <%@ page import="java.util.*" %>
 <html>
 <head>
 </head>
 <body>
 <form name="loginform" method="post" action="WelcomeServlet">
 <br><br>
  <table align="center"><tr><td><h2>Login Authentication</h2></td></tr></table>
  <table width="300px" align="center" style="border:1px solid #000000;backgroundcolor:#efefef;">
      <tr><td colspan=2></td></tr>
      <tr><td colspan=2>&nbsp;</td></tr>
  <tr>
    <td><b>Login Name</b></td>
    <td><input type="text" name="username" ></td>
   </tr>
  <tr>
    <td><b>Password</b></td>
    <td><input type="password" name="password"></td>
  </tr>

  <tr>
    <td></td>
    <td><input type="submit" name="Submit" value="Submit"></td>
  </tr>
  <tr><td colspan=2>&nbsp;</td></tr>
     </table><br><br></br></br>
    <p>
  <%
     String mess="";
     mess=(String)request.getAttribute("Message");
     out.println("="+mess);
   %>
   </p>
    </form>
</body>
</html>

然后这个servlet

 import java.io.*;
 import java.util.*;
  //import java.io.PrintWriter;
  import javax.servlet.*;
  //import javax.servlet.ServletConfig;
 //import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class WelcomeServlet extends HttpServlet {
 /* 
 @Override
 public void init(ServletConfig config) throws ServletException {
   super.init(config);
 }
*/

 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
/*
  * Get the value of form parameter
*/
 try  
 {
   response.setContentType("text/html");

    PrintWriter out = response.getWriter();
   //out.println("I am on welcome servlet...");
   String username = request.getParameter("username");
   String password =request.getParameter("password");
   System.out.println("username="+username);
   System.out.println("password="+password);
   System.out.println("response="+password);
   String welcomeMessage="";
   out.println("<html>");
     out.println("<head>");
     out.println("<title> A very simple servlet example</title>");
     out.println("</head>");
      out.println("<body>");
  if(username.equals("")&& username.equals("null")&& password.equals("")&& password.equals("null"))
      {
         welcomeMessage="username or password can not be blanked....";
         out.println("<h1>"+welcomeMessage+"<h1>");
       }else{       
             if((username.equals("kiran"))&&(password.equals("kiran")))
             {

            welcomeMessage = "Welcome "+username+" thanks for login...";
           out.println("<h1>"+welcomeMessage+"</h1>");

             }else
                 { 

            welcomeMessage="You are not the valid user...";
           out.println("<h1>"+welcomeMessage+"</h1>");


                 }

          }
      out.println("</body>");
      out.println("</html>");
      RequestDispatcher rd = request.getRequestDispatcher("/login.jsp");
      rd.forward(request, response);
      request.setAttribute("Message",welcomeMessage);
        //out.close();

}
catch( Exception e )  
{  
    e.printStackTrace();  
    //throw e;  
}  
  }

  public void destroy() {
   }
 } 

在这个mvc中,我在执行mvc后请求null。请尽早给出解决方案

1 个答案:

答案 0 :(得分:2)

转发前设置您的属性

 request.setAttribute("Message",welcomeMessage);
 RequestDispatcher rd = request.getRequestDispatcher("/login.jsp");
 rd.forward(request, response);