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

Streamについて

Java8で導入されたStreamですが、名前はしっていたものの、使い方がわからず放置していました。 これを機に調べたのですが、コレクションフレームワークの拡張のようですね。 特徴としては以下のような …

no image

Javaのarraycopy

最近あまりJava自体には触っていないですが、資格の勉強をコツコツとすすめていることもあり、新たな発見もあります。 8ヶ月ぐらいJava書いていますが、arraycopyというメソッドをはじめてしりま …

no image

Javaビルドツール

JavaではPHPやRubyなどといったインタプリタ言語とは違い、ソースはクラスファイルといわれるファイルに変換する必要があります。この作業をコンパイルと呼びます。最低限この作業をやらないとプログラム …

no image

JPAのdetach

このブログで何回か書いてきたんですが、JPAを使うときにpersisit=insert,merge=updateではないです。 参考リンク JPAまとめ JPAでのデータベースとの同期 実はJPAでf …

no image

日付けのメソッド その2

以前、時刻を扱うエントリーではCalendarクラスとDateクラスを使いましたが、Java8で標準になったTimeAPIについて調べてみます。 Contents1 現在時刻の出力2 任意時間の出力3 …