1

jspページでcontext-rootを取得する最良の方法は何ですか。css /imageを"/myapp/images/foo.gif"にハードコーディングした場合、コンテキストルート/アプリ名が変更されるとリンク切れになります。コンテキストルートはマルチパスである可能性があるため、相対パスの使用が常に好ましいとは限りません(例:/ mysite / myapp)

これまでのところ、これで問題なく<c:url var="root" value="/"/>動作するものを使用してみまし${root}た(context-rootが提供されます/myapp/)が、ユーザーがサイトに初めてアクセスする場合(または、ブラウザーでCookieがクリーンアップされる場合)、割り当てられる値${root}は次のようになります。/myapp/;jsessionid=019762g1hk3781kh98uihilhoそしてそれはimages/css参照を壊します。これ以外に良い方法はありますか?

4

1 に答える 1

3

これまでのところ、どちらが問題なく機能するかを試してみました<c:url var="root" value="/"/>(${root}はコンテキストルート/myapp /を提供します)

これは正しい方法ではありません。は、すべてのURLに個別<c:url>に適用する必要があります。

使用したほうがいい

<c:set var="root" value="${pageContext.request.contextPath}" />

参照:

于 2013-02-04T00:44:07.780 に答える