0

我有一个doGet被覆盖的servlet。相关的部分是:

// called from doGet(req,res)
private void serviceInternal(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    log.info("servicing a request");

    // magically compute jsp path from request params (includes the
    // logging of the app/mod/act as mentioned below

   log.info(jspPath);
   request.getRequestDispatcher(jspPath).forward(request, response);
}

现在我正在记录进入服务方法的 url,如果 url 是server:8080/context/app/mod/act?param=1日志消息app='app' mod='mod' act='act',我已经验证这运行良好。

当我尝试点击应该将我路由到 jsp 的东西时,出于某种愚蠢的原因,它会将我送回我的 doGet 方法!我的日志如下所示:

INFO  2015-04-12 21:35:07,511 servicing a request
INFO  2015-04-12 21:35:07,519 app='' mod='' act='' uid='null' 
INFO  2015-04-12 21:35:07,571 /WEB-INF/index.jsp
INFO  2015-04-12 21:35:07,571 servicing a request
INFO  2015-04-12 21:35:07,571 app='WEB-INF' mod='index.jsp' act='' uid='null' 

但是我不想通过 my 发送我的 jsp doGet- 我想将它发送到 JSP!为什么会这样做?

我的 servlet 正在捕获"/*",如果这有帮助的话。但我没想到它会捕获 jsps。

我在这里做错了什么?

4

1 回答 1

0

我的 servlet 正在捕获“/*”,如果这有帮助的话。但我没想到它会捕获 jsps。

你自己发现了问题。这就是原因。

于 2015-04-13T03:52:48.613 回答