【问题标题】:No context on this server matched此服务器上没有匹配的上下文
【发布时间】:2012-08-20 14:11:35
【问题描述】:

这是我的index.jsp 代码:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Index JSP File</title>
</head>
<body>
<form action="/IndexController" method="get">
<table>
<tr><td>Enter Your Name :</td> <td><input type="text" name="name"/></td></tr>
<tr><td><input type="submit" value="Submit" /></td></tr>
</table>
</form>
</body>
</html>   

这是我的IndexController Servlet 代码:

public class IndexController extends HttpServlet {

    protected void doProcess(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String uname = request.getParameter("name");
        response.sendRedirect("welcome.jsp?name="+uname);
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doProcess(request, response);
    }


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

}

这是我的welcome.jsp 页面代码

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<% String fname = request.getParameter("uname");%>
<h1>Welcome to JSP World,  <%=fname%></h1>
</body>
</html>

当我通过 Java EE 运行时运行它时,我得到了一个 index.jsp 页面,但是在我输入名称并单击提交后,我得到了以下错误:

Error 404 - Not Found No context on this server matched or handled this request. Contexts known to this server are:  JSPExample(/JSPExample)

【问题讨论】:

  • 您检查过Tomcat 中的servlet 映射配置吗?

标签: java jsp servlets


【解决方案1】:

还将welcome.jsp 中的&lt;% String fname = request.getParameter("**uname**");%&gt; 行更改为&lt;% String fname = request.getParameter("**name**");%&gt;,因为您的参数名称是name response.sendRedirect("**welcome.jsp?name="+uname);** :)

【讨论】:

  • 我将 '' 更改为 '' 面临同样的问题
【解决方案2】:

编辑 web.xml 并添加 servlet 映射

<servlet>
      <servlet-name>IndexController</servlet-name>
      <servlet-class>IndexController</servlet-class>
</servlet>
<servlet-mapping>
      <servlet-name>IndexController</servlet-name>
      <url-pattern>/IndexController</url-pattern>
</servlet-mapping>

【讨论】:

    【解决方案3】:

    在 eclipse 中如果你遇到这个问题,只需创建一个新的索引文件,使用另一个名称。然后终止最后运行的服务器,并启动一个新的服务器,运行新的 index.. 文件。我用这种方式解决了这个问题,最后我删除了新的索引文件并运行了我的第一个索引文件。

    【讨论】:

      猜你喜欢
      • 2018-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-27
      • 1970-01-01
      • 1970-01-01
      • 2020-11-23
      • 2013-04-26
      相关资源
      最近更新 更多