kuniku’s diary

はてなダイアリーから移行(旧 d.hatena.ne.jp/kuniku/)、表示がおかしな箇所はコメントをお願いします。記載されている内容は日付およびバージョンに注意してください。直近1年以上前は古い情報の可能性が高くなります。

strutsのカスタムタグにJSTLやELを使う

http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=22344&forum=12&2

  • 質問

html:link タグのaction属性を動的に変えたい

strutsのtaglibを用いてリンクタグを生成する際に、を使いますが、そのタグ内のaction属性をJSTLを用いて動的に変更したいのですが可能でしょうか?

下記のように記述すれば表示されるのですが、 <% String linkAction = (String)request.getAtrribute("linkAction"); %>
リンク

シンプルにしたいのでJSTLを用いるとエラーになってしまいます。
">リンク

  • 回答

リンク

確かに、strutsのhtmlタグ内の属性をセットするときに、c:outするとエラーに
なるんだよね。

c:if とか c:choose とか使って回避してたけど、上記のようにリクエストスコープ
に入れたモノを、取り出すようにすればよかったのか。

で、他も調べてみたら

http://otndnld.oracle.co.jp/document/products/ds10g/101202/doc_cd/web/B25064-01/adfcase_lesson5.htm

次に示すコードでは、EL式を直接タグのaction属性に使用できないので、
最初にを使用してnameという名前のローカル・ページ変数にEL式の値を設定し、
次にJSPスクリプトレットを使用して、このname変数の値をaction属性に渡している
ことに注目してください。



いったん、c:setで変数化して、それをhtmlタグのaction属性で参照する
ということか。