Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用注释的Servlet调用_Java_Jsp_Servlets - Fatal编程技术网

Java 使用注释的Servlet调用

Java 使用注释的Servlet调用,java,jsp,servlets,Java,Jsp,Servlets,我使用了register作为servlet的名称,并在单击submit按钮时调用它。但是,它没有被调用,因为我已经添加了所有jar文件。请有人能帮我解决这个错误。我刚刚开始学习后端 jsp代码 <form action="<%= request.getContextPath() %>/register" method="post"> <table style="with: 80%"> &

我使用了register作为servlet的名称,并在单击submit按钮时调用它。但是,它没有被调用,因为我已经添加了所有jar文件。请有人能帮我解决这个错误。我刚刚开始学习后端

jsp代码

<form action="<%= request.getContextPath() %>/register" method="post">
   <table style="with: 80%">
    <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>
   </table>
   <input type="submit" value="Submit" />
  </form>
@WebServlet("/register")
public class EmployeeServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    private EmployeeDao employeedao=new EmployeeDao();
    /**
     * Default constructor. 
     */
    public EmployeeServlet() {
        // TODO Auto-generated constructor stub
    }

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        
        
        RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/views/User.jsp");
        dispatcher.forward(request, response);
    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        Employee employee=new Employee();
        employee.setFirst_name(request.getParameter("firstname"));
        employee.setLast_name(request.getParameter("lastname"));
RequestDispatcher dispatcher=request.getRequestDispatcher("/WEB-INF/views/after_regestration.jsp");
        dispatcher.forward(request, response);
}
}

您是否尝试过一个简单的“Hello World”Servlet?首先调试它会更容易。您使用的是哪个Servlet容器?雄猫?什么版本?请向我们显示您的web应用程序的web.xml文件。日志中有错误吗?Tomcat servlet容器版本10。如果我们使用注释,那么就不需要使用web.xml文件,对吗。错误日志中没有错误。web应用程序不需要web.xml文件。但是,如果您想使用注释,那么可能必须提供注释。我认为您需要在web.xml文件的根标记中包含以下属性:;metadata complete=“false”我知道,至少声明了“如果未指定metadata complete属性,或者其值为false,部署工具必须检查应用程序的类文件中是否有此类注释。”但是,我没有发现这是真的。除非我指定,否则找不到我的批注。请阅读“如果web应用程序不包含任何servlet、筛选器或侦听器组件,或者正在使用批注声明,则不需要包含web.xml。换句话说,仅包含静态文件或JSP页的应用程序不需要存在web.xml。”