2013-02-20 66 views
-1

我创建了一个简单的servlet,这是打印一些消息是这样的:JSP Servlet的显示inexisting数据

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

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

     PrintWriter out = response.getWriter(); 
     out.println("Hello there"); 

    } 

一切运作良好。 然后,我创建2个JSP页面这样的:

<body> 
    <form method="post" action="servletExample"> 
     <table border="0"> 
      <tr> 
       <td> 
        First name: 
       </td> 
       <td> 
        <input type="text" name="firstname"/> 
       </td>    
      </tr> 
      <tr> 
       <td> 
        Last name: 
       </td> 
       <td> 
        <input type="text" name="lastname"/> 
       </td>    
      </tr> 
      <tr> 
       <td colspan="2"> 
        <input type="submit" value="Submit"/> 
       </td>    
      </tr> 
     </table> 
    </form> 
</body> 

<body> 
    <% 
     String firstName = (String)request.getAttribute("firstname"); 
     String lastName = (String)request.getAttribute("lastname"); 

     out.println(firstName+ " "+lastName); 
    %> 
</body> 

该servlet现在看起来是这样的:

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

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

     String firstName=request.getParameter("firstname"); 
     String lastName=request.getParameter("lastname"); 

     if(firstName == null || lastName==null){ 
      getServletContext().getRequestDispatcher("/index.jsp").forward(request, response); 
      return; 
     } 

     request.setAttribute("firstname", firstName); 
     request.setAttribute("lastname", lastName); 
     getServletContext().getRequestDispatcher("/output.jsp").forward(request, response); 
    } 
} 

当我运行它,我看到这种形式,但是当我提交我从2天前的例子中看到“Hello there”。无论我做什么,我都会看到。 我需要清洁什么? 我错过了什么?

编辑:我使用的Eclipse和Tomcat 7

回答

3

假设你是在Eclipse中,停止Tomcat服务器,请选择您的项目,在Eclipse的菜单中选择项目和Clean然后Build Project。然后重新启动Tomcat服务器并重试。

Eclipse在每次运行时都使用Tomcat的最新构建项目版本。您需要清理项目并为Eclipse和Tomcat重新构建项目以刷新更改。

+0

谢谢。有效。 – 2013-02-20 20:41:06

+0

是的,Eclipse有时会很烦人,总是不得不刷新。祝你好运! – 2013-02-20 20:41:40