1

Glassfishサーバーを使用しています。@LocalBeanサーバーの起動時に が初期化されているようです。他の Bean の場合、ルックアップ時に正しく初期化されます。これは LocalBean の正しい動作ですか?

4

1 に答える 1

2

@LocalBean熱心に初期化する必要があり、他のものはすべきではないというルールはありません。特定の Bean をいつ初期化する必要があるかを決定するのは、コンテナー プロバイダーに任されています。

Bean がいつ初期化されるかを制御できる唯一のケースは、アノテーション付きの@SingletonEJBを使用することです。@Startupこれにより、コンテナー プロバイダーは、サーバーの起動時にシングルトン Bean のインスタンスを作成するように強制されます。これは、初期化ロジックを配置するのに適した場所です。

あなたが観察した動作は、Glassfish の場合は正しいかもしれませんが、他のコンテナー プロバイダーが別のアプローチを選択する可能性があるため、中継しません。

于 2012-10-01T14:03:06.847 に答える