Tomcat无法识别我的控制器(MVC) - 实例化servlet类MyController时出错

时间:2015-02-12 16:58:28

标签: eclipse tomcat servlets model-view-controller controller

我有四个我想要一起交互的文件:三个视图(index.jsp,error.jsp和success.jsp)和一个控制器(MyController.java)

ProjectName
|__
|  Java Reosurces
|               |__src/main/resources
|                                   |__controller
|                                               |__MyController.java
|_src
     |__main
            |__webapp
                    |__WEB-INF
                    |        |__web.xml 
                    |
                    |__index.jsp
                    |__error.jsp
                    |__success.jsp

对于我的index.jsp,我只需输入一个文本框,询问名称并等待提交

<html>
<body>
 <form action="MyController" method="post">
  Name: <input type="text" name="fname"><br>
   <input type="submit" value="Submit">
 </form> 
</body>
</html>

当表单获得提交时,我希望它在MyController上处理它,它有

public class MyController extends HttpServlet {
private static final long serialVersionUID = 1L;

public MyController() {
    super();
}

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

    String fname = request.getParameter("fname");

    RequestDispatcher rd = null;

    if (fname.equals("luis")) {
        rd = request.getRequestDispatcher("/success.jsp");
        request.setAttribute("fname", "luis");
    } else {
        rd = request.getRequestDispatcher("/error.jsp");
    }
    rd.forward(request, response);
}

}

从那里确定是否显示error.jsp或success.jsp,但是现在我得到了一个&#34; HTTP状态500 - 错误实例化servlet类MyController&#34;。我能做错什么?我认为这可能是路径/组织目录而不是代码的问题。

我的web.xml有

<web-app>
    <display-name>Archetype Created Web Application</display-name>
    <servlet>
        <servlet-name>MyController</servlet-name>
        <display-name>MyController</display-name>
        <description></description>
        <servlet-class>MyController</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>MyController</servlet-name>
        <url-pattern>/MyController</url-pattern>
    </servlet-mapping>
</web-app>

提前感谢您的帮助!

0 个答案:

没有答案