問題タブ [ipojo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Eclipse Bndtools での OSGi バンドルの iPOJO 操作
Eclispe でのコンポーネント宣言に iPOJO アノテーションを使用し、ビルド中にバンドル マニフェストに 'iPOJO-Components' ヘッダーを含めるために iPOJO 操作を実行したいと考えています。
グーグルで調べた後、「bnd-ipojo-plugin」について少し知りました。これで問題が解決するかどうかはわかりません。
私は知りたいです :
1)これが私の問題を解決できるかどうか。
2) 問題を解決できる場合、この「bnd-ipojo-plugin」を「cnf」ディレクトリに追加するにはどうすればよいですか。
問題の解決を手伝ってください
java - 検証バックが追加されない限り、iPOJO コンポーネント インジェクション コールバックが呼び出されない
検証コールバック メソッドを追加しない限り、iPOJO コンポーネントのインジェクション コールバックが呼び出されません。
しかし、コマンド 'instances' を入力すると、OSGi コンソールに有効なコンポーネントがリストされます。どうしたの ?
java - シャットダウン時の IPOJO ログ警告
アプリケーションがシャットダウンされ、いくつかの @Requires サービスがシャットダウンされると、ipojo は例外をログに記録します。
私は疑っています (私のマシンでは問題を再現できません)、proxy = false および/または unbind で null に設定することに関係がある可能性があります。
java - iPOJO とコンポーネント ipojo 間の接続
私の問題に関連する例があります。(共同ファイル: https://drive.google.com/file/d/0B8ThLrV6-uchaFlTZTNGQ1FnT1E/view?usp=sharing )
3 つの ipojo コンポーネント (3 つのバンドル) があります。
CallHello は、HelloDelay または HelloComponentReplace の両方に実装された DelayService サービスを使用します。
HelloDelay と HelloComponentReplace は、HelloPrint に実装された HelloService サービスを使用します。
展開時に、5 つのバンドルを展開します。
service.hello.service.jar
printer.hello.printer.jar
delay.hello.delay.jar
replace.hello.replace.jar
call.hello.call.jar
結果: DelayService は常に HelloDelay の実装を使用します。
最後に、Main.java を実行して、HelloDelay と HelloComponentReplace の手動選択を制御します。
Main.java でバンドルを開始/停止またはアンインストール/インストールする機能を実装しました (そしてうまく機能します)。ただし、HelloDelay または HelloComponentReplace のいずれかが有効です。
両方がアクティブで有効な場合は、iPOJO Web サイトで読み取り、「コンパレーター」を使用できます。しかし、上記の 2 つのコンポーネント間の選択を制御するために「コンパレータ」を適用する方法がわかりません。これは優先度を変更するためですか?バンドルの優先順位を変更できることはわかっていますが、ファイル (Main.java) と iPOJO に適用する方法がわかりません。
要求するコンポーネントと多くの提供するコンポーネント (同じサービスまたはインターフェース) の間の接続 (バインディング) を制御できますか?
今回の私の困難をあなたが助けてくれることを願っています。
よろしくお願いします、
java - iPOJO メタデータの「from」を動的に変更する
例として、iPOJO に関連する問題があります。
「HelloService」サービス (インターフェース) を提供するコンポーネント A を定義してデプロイします。そして、「instance_A」という名前のコンポーネント A のインスタンス</p>
A で「HelloService」サービスを必要とするコンポーネント B も定義します。B の実装は依存関係を宣言します。
HelloService こんにちは。
そして、metadata.xml で次のように宣言します。
- ここで、コンポーネント C を実装して、メタデータの変更 (from="instance_A") を別のメタデータ (例: from="instance_D") に動的に制御したいと考えています。
この「から」を変更するにはどうすればよいですか(コンポーネントC)?
前もって感謝します
ipojo - iPOJO で動的ターゲティング プロバイダーを更新する
次のように宣言されたコンポーネントがあります。
このコンポーネントのjarファイル:helloComponent.jar
ここで、(value="A") を (value="AA") に更新したいと思います。したがって、ConfigurationAdmin を使用してこのプロパティを更新するコンポーネントを実装します。
ただし、この ControllerReconfiguration コンポーネントは、'hello' インスタンスの値 'A' ('AA' による) を更新できません。
この ControllerReconfiguration コンポーネントを変更する方法を教えてください。
助けてくれてありがとう。