4

同等のことができるかどうか疑問に思っています

public void start(BundleContext context)
{  
    String filter = "filter for my specific service";
    context.addServiceListener(new MyServiceListener(), filter);
}

春のDMで。ライフサイクル管理のリスナーを追加するための参照資料を見つけました。ただし、これは登録されているサービスのライフサイクルに関連しています。私が必要としているのは、特定のサービス インターフェイスに登録/登録解除されているサービスのライフサイクルを認識することです。

これを知る必要があるバンドルは、実際にサービスを作成するのではなく、サービスを使用します。実行時に変更されるこのサービスの複数のインスタンスがあるため、Spring 構成で単純にサービス参照を作成することはできません。

4

1 に答える 1

2

Spring DM には、サービスのコレクションを参照するためのサポートが含まれています。残念ながら、新しいユーザーとしてリンクを投稿することはできませんが、この機能は Spring DM 1.2 ドキュメントのセクション 7.2.2 で説明されています。Spring DM は、サービスがサービス レジストリに追加され、サービス レジストリから削除されると、実行時にこのコレクションの内容を自動的に更新します。

単一の参照として、またはサービスのコレクションとして、サービスに対する参照を宣言する場合、サービスが行き来するときに通知されるリスナー Bean を宣言することもできます。これについては、セクション 7.2.3 に記載されています。

サービスのリストまたはセットを使用し、リスナー Bean を使用して、コレクションの内容の変更が通知されるようにすることをお勧めします。

于 2009-06-01T11:33:27.563 に答える