在jsp页面上获取context-root的最佳方法是什么。如果我将我的css / image硬编码为“/myapp/images/foo.gif”,那么如果更改了上下文根/应用程序名称,它将是一个断开的链接。使用相对路径并不总是可取的,因为上下文根可以是多路径的(例如:/ mysite / myapp)
到目前为止,我已尝试使用<c:url var="root" value="/"/>
工作正常(${root}
将提供上下文根/myapp/
),但是如果这是用户第一次访问该网站(或者如果在浏览器上清理了cookie),分配给${root}
的值变为/myapp/;jsessionid=019762g1hk3781kh98uihilho
,它会破坏images / css引用。还有比这更好的方法吗?
答案 0 :(得分:3)
到目前为止,我已尝试使用
<c:url var="root" value="/"/>
工作正常($ {root}将提供context-root / myapp /)
这不是正确的方法。 <c:url>
应该应用于每个网址单独。
你最好使用
<c:set var="root" value="${pageContext.request.contextPath}" />