tapestry-s2-integration

Web系から離れてしまって最近の情報に疎くなってしまった。
というわけで色々調査がてらTapestry5とS2を統合してみました。どうすればいいのかなとか考えてたらいつの間にかT5のリポジトリtapestry-spring-integrationとかできてるし。だから単純にパクっただけ。すごい簡単にできた。

ModuleクラスのSubModuleに指定して使います。

@Id("app")
@SubModule(S2Module.class)
public class AppModule {
}

ページ側はこんな感じです。Greetingという型でバインディングしてます。

public class Start {
    @Inject("s2:")
    private Greeting greeting;
    
    public String getGreeting() {
        return greeting.greet();
    }
}

コンポーネント名でバインディングしたいときは、@Inject("s2:コンポーネント")とします。

ハッキリ言ってちゃんと動くかわかりませんwT5を全然理解してないし何かしらのアプリすら作ったことないですからね。ホットデプロイとかは当然未確認ですよ。つまりその程度です。