2015-11-01 59 views
1

我有如下的servlet:我得到一個404錯誤,不知道是什麼我失蹤

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.http.*; 

public class MailServlet extends HttpServlet { 

    @Override 
    public void doGet(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 

     response.setContentType("text/html"); 
     PrintWriter out = response.getWriter(); 

     String m = request.getParameter("mail"); 
     String sub = request.getParameter("subject"); 
     String messg = request.getParameter("message"); 

     SendMail.send(m, sub, messg); 
     out.print("Your Mail has been sent successfully"); 
     out.close(); 
    } 
} 

我試圖通過調用它下面的表格:

<html> 
<head> 
    <title></title> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <meta name="viewport" content="width=device-width"> 
</head> 
<body bgcolor="pink"> 
    <form action="MailServlet"> 
     <table> 
      <tr> 
       <td>To:</td> 
       <td><input type="text" name="mail"/><br/></td> 
      </tr> 
      <tr> 
       <td>Subject:</td> 
       <td><input type="text" name="subject"><br/></td> 
      </tr> 
      <tr> 
       <td>Message Text:</td> 
       <td><textarea rows="12" cols="80" name="message"></textarea><br/></td> 
      </tr> 
      <tr> 
       <td><input type="submit" value="Send"></td> 
       <td><input type="reset" value="Reset"></td> 
      </tr> 
     </table> 
    </form> 
</body> 

然而,它返回一個HTTP狀態404:

enter image description here

+0

你映射你的servlet在web.xml? – BackSlash

+0

不可以請你指導一下嗎? @BackSlash –

+0

看看http://www.studytonight.com/servlet/Sending-email-using-servlet.php –

回答

1

Servlets需要被映射以便能夠訪問它們。

如果您正在使用的Servlet 3.0,你可以使用:

@WebServlet("/MailServlet") // /MailServlet is the partial URL of the servlet. 
public class MailServlet extends HttpServlet { 

    [...] 

} 

如果你不使用的Servlet 3.0,您必須在servlet映射web.xml,通過將這些線webapp元素中:

<servlet> 
    <servlet-name>MailServlet</servlet-name> 
    <servlet-class>com.yourpackage.MailServlet</servlet-class> 
</servlet> 
<servlet-mapping> 
    <servlet-name>MailServlet</servlet-name> 
    <url-pattern>/MailServlet</url-pattern> 
</servlet-mapping> 

Creating and configuring servlets

+0

謝謝你節省我的時間。有用。 –

相關問題