2016-04-19 6 views
0

OSGiの青写真では、プロパティプレースホルダからパラメータを取得できます <cm:property-placeholder persistent-id="id" update-strategy="reload"/>.しかし、これらのパラメータは.cfgから読み込まれます。私はDataBaseからparamsをロードする必要があります。プロパティープレースホルダのparamsプロバイダを設定できますか?Blueprintプロパティ - プレースホルダプロバイダ

答えて

0

property-placeholder cm:property-placeholderは、config adminからのみプロパティをフィードできます。だから、いくつかのXMLを設定するだけで、簡単な解決策はありません。

これを達成するための3つの方法があります。

  1. あなたは、データベースからのconfigsを取得ConfigAdminバックエンドを書くことができます。
  2. property-placeholder要素のような要素を実装し、データベースからconfigsを取得する独自の青写真名前空間を記述することができます。
  3. より簡単な解決策は、ランタイムにデータベースを読み込むバンドルをインストールし、ConfigurationAdminサービスを使用してデータベースの内容に従って構成を作成することです。

私は3番目の解決策を選択します。その良い副作用は、あなたがconfigsを書いたら、データベースがダウンしても停止しないことです。

関連する問題