为12岁的Java Web应用程序启用URL重写

时间:2010-02-18 08:25:51

标签: java session servlets url-rewriting

我正在尝试将会话跟踪功能添加到12岁的Java Web应用程序中。其中使用MVC模式与jsp和servlet。如果禁用cookie,我们需要使它工作。

我想知道对此应用程序实施会话跟踪的最佳方法是什么? :)

当我使用getRequestDispatcher时,我是否需要使用encodeURL?像这样 ?

getRequestDispatcher(res.encodeURL(jspname)); 

...谢谢

1 个答案:

答案 0 :(得分:4)

您需要浏览应用程序以查找生成内部链接的位置,并通过HttpServletResponse.encodeUrl()方法传递这些链接。如果应用程序认为有必要,这将重写URL,例如当检测到客户端不支持cookie时。

考虑到应用程序的年龄,您可能必须以艰难的方式执行此操作,即使用以下JSP表达式:

<a href="<% response.encodeUrl("/link") %>">

如果JSTL是一个选项,那么<c:url>会使网址重写更容易。