skillup

技術ブログ

Java

JSPでのカスタムタグ

投稿日:

前回のインク―ドですが、文字列以上の情報を渡すことはできませんでした。

いろいろ調べたり、上司に聞いてみるとカスタムタグという独自のタグを作る機能があるとのことでさっそく調査。

カスタムタグ

やりたかったこと

自分がやりたかったのは

みたいなプルダウンを何か所も作る必要があったので下記のことがテンプレートでできればと思っていました。

  • タイトル、変数名、id名を変数として渡したい。
  • 選択肢のList(valueと表示部分のMapをListに格納したもの)を渡してプルダウンを動的に作りたい。

上記を実行するのに必要な処理を書きます。

テンプレートの定義

上記が変数を受け取ってHTMLを吐き出すプログラムです。

プログラムが絡むようですね・・(絡まなくても行けるようですが・・・)

内部のこまかい部分はわかってないですが、変数を受け取ってHTMLを出力することはできました。

で、このプログラムに渡す変数の定義をしないといけないです。

WEB-INFの下にtaglibsというディレクトリを作り下記のようなファイルを作ります。

htmlhelper.tld

↑上記は設定ファイルの名称ですが、これはもちろん任意です。

メイン側の呼び出し

もともとのHTMLが書いてある場所からどう呼び出すかですが、下記でOK

 web.xml

web.xmlにも下記のような記述が必要です。

記述する場所が少々多いのがメンドイですね。JSFが恋しくなります・・・

しかも、半分以上わかっていないので、やっていくのと並行して覚えていきたいと思います。

一応参考リンクを紹介。

参考リンク

http://www.javaroad.jp/servletjsp/sj_jsp13.htm

http://www.javaroad.jp/servletjsp/sj_jsp14.htm

http://www.javaroad.jp/servletjsp/sj_jsp15.htm

http://www.techscore.com/tech/Java/JavaEE/JSP/7-2/

-Java
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

JavaSEでのCDI

以前、JavaSEでもCDIを使ってみたい!と思ったのですが、以前は探し方が悪かったのか情報を見つけ出すことができませんでした。 が、昨日ちょっと検索したらちょっと情報があり、無事実装できたのでメモし …

no image

ページャープラグイン dataTable

レコードを一覧表示する上で意外と面倒くさいのがページャーでしょう。 自力で作成してもよいのですが、なかなかこれが面倒だったりします。 また近年ではリンクを踏ませずに、スクロールするだけで表示ができる形 …

no image

Javaでのメール送信プログラム

Javaでメール送信のプログラムがあったんで、メモ。 SMTPの認証とかはせず一番簡単なパターンです。 ケースでいうとサーバーA、サーバーBがあり下記のようなケースです。 A メールサーバー(smtp …

no image

Messageプロパティの設置方法

JavaEEに限らず、エラーメッセージなどは通常、プログラムの中に書くのではなく、できればエラーメッセージファイルの中で管理するのが望ましいでしょう。 またJSF側の名称の表示なども直接xhtmlの中 …

no image

メソッドのtransient

エンティティを作成するときに、データベースのカラムにない値をプロパティを持たせるためにはtransientという修飾子が必要です。 参考リンク フィールド以外のプロパティをエンティティに持たせる 通常 …