カレントパスを気にせずにjspにcssファイル等のパスを指定する方法
同じjspを使う場合であってもurlが/employeeと/employee/indexなどとカレントパスが異なる場合があるので、jsp内でcssファイルなどを相対パスでベタ書きした場合には、どちら一方は正しくないパスとなってしまいます。
なにかSAStruts側で用意されていないか調べてみたらありました。
aタグのhref要素などを設定するときに、コンテキストルートを自動的に補完させる場合は、 f:url()を使います。パスを/ではじめた場合は、コンテキストルートからみたパスになります。パスが/ではじまっていない場合は、JSPからみたパスになります。
こんな感じで書けます。
<link rel="stylesheet" type="text/css" href="${f:url("/css/hoge.css")}">
パスを/ではじめるのがミソですね。
これを知らなかったら、
<link rel="stylesheet" type="text/css" href="<%= request.getContextPath() %>/css/hoge.css">
といった感じの記述をたくさん書いてしまうところでした。
結果は同じですが、前者の方が断然シンプルですね。