将 JSP/JSTL 的 <c:url> 应用于 servlet 内的路径
Posted
技术标签:
【中文标题】将 JSP/JSTL 的 <c:url> 应用于 servlet 内的路径【英文标题】:applying JSP/JSTL's <c:url> to a path inside a servlet 【发布时间】:2011-04-10 23:20:40 【问题描述】:在我们的 JSP 页面中,我们广泛使用。效果很好,重写了 URL 以处理 sessionid、上下文等。但是现在我们需要在一个将 HttpServletRequest 和 HttpServletResponse 作为 Spring Security 规范的一部分的类中完成一些工作。
如何将类型转换应用于 servlet 中的路径?我想我可以使用方案、主机、端口、上下文、路径和查询参数重建 URL(我错过了什么吗?)。但我希望有一个标准的方法来做到这一点,所以我知道它正在正确地完成。
【问题讨论】:
【参考方案1】:HttpServletResponse#encodeURL()
和 HttpServletResponse#encodeRedirectURL()
处理 sessionid。上下文可以通过HttpServletRequest#getContextPath()
获取。
【讨论】:
感谢 BalusC。我知道重建 URL 的响应和请求方法,我只是希望有一个简单的标准方法,比如 JSTL 的以上是关于将 JSP/JSTL 的 <c:url> 应用于 servlet 内的路径的主要内容,如果未能解决你的问题,请参考以下文章
在 JSP/JSTL 中使用 <c:forEach> 需要帮助
java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config