POHP戦国時代到来!?

最近では,POJO(Plain Old Java Object)と同じように,POHP(Plain Old HTML Page)というキーワードが言われるようになった。これは,ASPやJSPなどの,独自タグやスクリプトレットの記述による複雑怪奇になりやすいViewコンポーネントを見直し,普通のHTMLで作ればいいじゃん,という考えから出てきた言葉である。

現在のPOHP対応のソリューションのほとんどは,通常のHTMLの各要素が持つid属性を利用したものだ。HTMLの要素を動的に解析し,特定のid属性の要素の内容を入れ替えることによって,動的な内容をHTML内に組み込むという動作になる。

今のところ僕が把握しているPOHPのソリューションは,以下のようなものがある( 12/9追記しました)。

  • Nirvana - POHPからJSF対応のJSPに動的変換する

  • S2JSF - JSFのコンポーネントツリーをPOHPにマッピング

  • Mayaa - POHPだけどJSPカスタムタグも書ける

  • Tapestry - WebアプリケーションフレームワークでPOHPの老舗

  • Wicket - SwingちっくなコーディングでPOHPを実現

  • facelets - バックエンドにJSFを使った,TapestryちっくなWebフレームワーク

  • Struts Shale Clay Plug-in - Shale+Clay Plug-in+jsfid属性でPOHPを実現

この中でも注目しているのは,Wicketである。そもそもWicketを立ち上げたのが,Swingの開発メンバー(Jonathan Locke氏)というところが,かなり素敵だ。HTML的には,    ここは動的

というPOHPになるのだが,Javaコードの方は,例えば,   Label label = new Label(“test”, “ほげほげ”);   Panel panel = new Panel(“test-panel”);   panel.add(label);

って感じになる。SwingでGUIアプリケーションを書いたことのある人なら,間違いなく「おぉぉ!」って思うだろう。僕も思った。

今は「POHP戦国時代の幕開け」って感じで,役者がやっと揃ったかな,という状態だ。今後,どれが生き残っていくのか,注目である。

ちなみに,僕としてはWicketを応援したい。

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

関連記事

2023年のRemap

Remapにファームウェアビルド機能を追加しました

Google I/O 2023でのウェブ関連のトピック

2022年を振り返って

現在のRemapと今後のRemapについて