私はこのシナリオを持っています。同じインターフェースを提供する 3 つの宣言型サービスがあります (たとえば、リーダー インターフェースで、readerimpl1-database-readerimpl2-flat file-readerimpl3-memory があります)。データベースの実装のみにバインドするコンシューマーが必要です。コンポーネント定義で名前を付けるので、その名前がレジストリにあると確信しているので、activate メソッドを追加すると、その名前を使用してコンポーネント コンテキストから検索できます。
サービス名をパラメーターとして使用しながら、バインド/バインド解除を介して試してみたいと思います。コンポーネント参照要素の「ターゲット」パラメーターを使用してこれを行うことができると確信していますが、使用方法がわかりません。
他の誰かがこれをしましたか?
これは @Reference(mapped-name="foo") を使用するのと似ています