请求的资源不可用?

时间:2015-10-30 14:52:20

标签: java eclipse servlets

我是servlets和jdbc的新手。我刚刚创建了一个注册页面和一个HTML注册表单。我不知道为什么我会收到类似的错误:HTTP状态404以及此描述为请求的页面不可用。这是我的servlet,html和.xml文件。请帮我解决这个问题。我在eclipse kepler中使用tomcat 7和jdk8。

 public class Register extends HttpServlet {

 protected void doPost(HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException {
    response.setContentType("text/html");
    PrintWriter pw = response.getWriter();

    String Name = request.getParameter("Name");
    String Email = request.getParameter("Email");
    String Password = request.getParameter("Pass");

    try {
        Class.forName("oracle.jdbc.driver.DriverManager");
        Connection conn = DriverManager.getConnection(
                "jdbc:oracle:thin:@localhost:1521:orcl", "scott", "tiger");
        PreparedStatement ps = conn
                .prepareStatement("Insert into student values(?,?,?)");
        ps.setString(1, Name);
        ps.setString(2, Email);
        ps.setString(3, Password);

        int i = ps.executeUpdate();
        if (i > 0) {
            pw.println("Registered Successfully");
        }

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

}

我的Html代码。

<body>
<form method="post" action="register">
    Name : <input type="text" name="Name"><br/>
    Email :<input type="text" name="Email"><br/>
    Password :<input type="password" name="Pass"><br/>
    <input type="submit" value="register"/>
</form>

和我的web.xml文件

<?xml version="1.0" encoding="UTF-8"?>
  <web-app >
    <display-name>SimpleServlet</display-name>
   <welcome-file-list>
    <welcome-file>index.html</welcome-file>
   </welcome-file-list>
   <servlet>
    <servlet-name>register</servlet-name>
    <servlet-class>Register</servlet-class>
   </servlet>
   <servlet-mapping>
    <servlet-name>register</servlet-name>
    <url-pattern>/register</url-pattern>
   </servlet-mapping>
 </web-app>

1 个答案:

答案 0 :(得分:0)

我可以使用http://localhost:8080/MyWebapp/register来访问servlet代码。

就我而言,Register servlet是默认包。 如果您的Register servlet在一个包中,那么在web.xml中,使用这样的包指定类名。

<servlet>
<servlet-name>register</servlet-name>
<servlet-class>your.package.Register</servlet-class>
</servlet>