JSF+AjaxでUIコンポーネント開発 with Shale Remoting (6)

JSF+AjaxでUIコンポーネント開発 with Shale Remoting (4)」で予告した内容を今回紹介しようと思ったが,あまり概論ばかりでも退屈なので,実際のコードを今回から解説していこうと思う。その中で処理の流れを見ていけばいいかな,と。 JSFコンポーネントのJSP実装はカスタムタグの形態をとるため,まずはタグライブラリディスクリプタ,つまりtaglib.tldファイルから取り上げよう。taglib.tldファイルはJSFだからといって特別なことは何もない。JSPのカスタムタグを自作するときと同様に作成すれば良い。 そして,JARファイルを配置するだけでカスタムタグを使用可能とするために,uri要素はしっかりと記述しておく。

1.0

double-select

http://www.eisbahn.jp/jsf/double-select

これにより,JSP内で以下のように宣言できるようになり,web.xmlへの記述も不要となる。

次に,double-selectタグの定義だが,要点としては,

  • 本体部は持たない。

  • 属性は「id」「value」「leftSelectItems」「rightSelectItems」の4つを定義する。 となる。「 JSF+AjaxでUIコンポーネント開発 with Shale Remoting (5)」で示したdouble-selectタグの記述例を思い出して欲しい。double-selectタグ定義のコードは以下のようになる。

   double-select    jp.eisbahn.testprograms.jsf.ds.DoubleSelectTag    empty         id      false            value      true            leftSelectItems      true            rightSelectItems      true   

id属性のみを任意とし,他の属性は必須とした。leftSelectItems属性およびrightSelectItems属性は,選択肢を得るために必ず記述が必要となる。また,入力コンポーネントであるからvalue属性も事実上必須としても良いと考えられる。 タグ名は「double-select」とし,カスタムタグハンドラクラスとしてDoubleSelectTagクラスを指定している。特別JSFな記述は見当たらないことはわかるだろう。 taglib.tldファイルの完成形を ここからダウンロードできるようにしてある。「 JSF+AjaxでUIコンポーネント開発 with Shale Remoting (3)」で作成したEclipseプロジェクトの以下の場所に配置されたし。 ・[Eclipseワークスペース]/double-select/src/main/resources/META-INF/ 次回はいよいよJSFに依存したコーディングに入っていこう。

このエントリーをはてなブックマークに追加

関連記事

40%キーボードに慣れるためにやったこと

Lunakey PicoでQMK Firmwareを動かしてみました

Googleアシスタント向け会話型アクションが1年後にシャットダウンされます

Google I/O 2022でのGoogleアシスタント関連のセッション

Remap Organizations feature has been released