在超链接上调用servlet

时间:2013-12-17 05:59:11

标签: jsp servlets hyperlink

当我单击注销按钮时,请求被重定向到servlet。但它似乎没有工作正常。我确实在web.xml上映射了servlet。

我得到的错误是

  

请求的资源(/ LogoutServlet)不可用。

以下是我的代码。

Web.xml中

<servlet>
   <display-name>LogoutServlet</display-name>
   <servlet-name>LogoutServlet</servlet-name>
   <servlet-class>servlet.LogoutServlet</servlet-class>
</servlet>

<servlet-mapping>
   <servlet-name>LogoutServlet</servlet-name>
   <url-pattern>/LogoutServlet</url-pattern>
</servlet-mapping>

在JSP

<a href="/LogoutServlet">Log Off</a>

1 个答案:

答案 0 :(得分:1)

<a href="/LogoutServlet">Log Off</a>

网址不应以正斜杠/开头。您需要了解这一点,无论何时在某个URL上放置正斜杠,它都将被重定向到服务器的根(而不是应用程序),实际上我们不希望这样。

使用上述链接,浏览器中的网址将类似于http://somehost:port/LogoutServlet,而应该是http://somehost:port/youApplicationContext/../LogoutServlet

要解决此问题,请简单地将您的href编辑为<a href="LogoutServlet">Log Off</a>(不使用正斜杠)