0

メソッドが実行されるに呼び出す必要があるいくつかのアクションでTapestry5説明するための便利で適切な方法はありますか?AppModule bind()

もちろん、bind()メソッドブロックの先頭にあるメソッド内にそのようなアクションを含めることは可能です。しかし、それはこれについて他の可能性があるに違いないようです。

ところで、@Startup私の場合はすでに開始されたサービスを使用しているため、これには適格な方法ではありませんが、サービスがバインドされる前にいくつかのアクションを実行する必要があります。

4

3 に答える 3

1

モジュールクラスで名前のない静的ブロックを使用していることに気付くことがあります。これは主に、Tapestryサービスが依存するレガシーサービスを初期化するためです。何かのようなもの:

public final class MyModule {

    static {
        // early set-up here
    }

    public static void bind(ServiceBinder binder) {
        // binding here
    }
}

これにより、モジュールコードの可読性が少し向上するようですが、同時に、単体テスト用に設定するのがやや難しい場合があります。

于 2013-02-13T12:05:34.640 に答える
1

Tawusの答えの外; いいえ、静的コードブロック(標準のJavaであり、Tapestry関連ではありません)以外にできることは何もありません。

于 2013-05-31T18:35:38.357 に答える
0

Tapestry Webアプリケーションの場合は、拡張TapestryFilterして初期化手順を実行できます。インスピレーションを得るためにTapestryFilterのソースコードを調べてください。TapestryAppInitializerも参照してください

于 2013-01-30T13:54:23.927 に答える