Apache Wicketをお試し。
新世代なWebアプリフレームワークらしい「Apache Wicket」を試してみようと思い、HelloWorldを読んでみた。
メッセージ表示用のテンプレートが
<html> <body> <span wicket:id="message" id="message">Message goes here</span> </body> </html>
こう。"message"オブジェクトが定義されているテンプレート。ごく普通。
そして、これにJavaコードで表示するテキストをセットする。のだけれど、
public HelloWorld() { add(new Label("message", "Hello World!")); }
HTMLテンプレートから通して読み下すと、「"message"を定義したページに、ラベルオブジェクト"message"を、addする」って理解でいいのかな? なんだかうまく文脈が繋がってないような・・・
と思っていたところにとどめの"web.xml"。
だめだーRails脳にはむつかしすぎる。終了ー。人類は衰退しました。
HTMLとJavaを明確に分離してあるので、たしかにHTMLはかなり奇麗。
でもその副作用なのか、spanタグと new Label() とか、textareaタグと new TextArea() とか、同じ意味のコードをHTMLとJavaの両方に書かなきゃいけない感じがした。さらにJavaでは、newしたオブジェクトをadd()しないといけない。すでにページに定義してあるのに、なんでadd?
それでも、Strutsの破滅的ややこしさよりはずっとずっとシンプル。だとおもうStrutsもう何年も触ってないから忘れたけど。
それでもそれでも、eRubyのように動的な部分だけ <%= %> とかで埋め込むほうが、シンプルで分かりやすいような気がするなぁ。