250.7. 場所でのシステムおよび環境変数の使用


Camel 2.7 で利用可能

この場所は、JVM システムプロパティーおよび OS 環境変数のプレースホルダーの使用をサポートするようになりました。

以下に例を示します。

location=file:${karaf.home}/etc/foo.properties
Copy to Clipboard Toggle word wrap

上記の場所で、キー karaf.home を持つ JVM システムプロパティーを使用して File スキームを使用して場所を定義しました。

代わりに OS 環境変数を使用するには、env をプレフィックスとして付加する必要があります。

location=file:${env:APP_HOME}/etc/foo.properties
Copy to Clipboard Toggle word wrap

APP_HOME は OS 環境です。

以下のように、同じ場所に複数のプレースホルダーを配置することができます。

location=file:${env:APP_HOME}/etc/${prop.name}.properties
Copy to Clipboard Toggle word wrap

#=== system and environment variables to configure property prefix and suffix

Camel 2.12.5、2.13.3、2.14.0 から利用可能

propertyPrefixpropertySuffix 設定プロパティーは、JVM システムプロパティーおよび OS 環境変数のプレースホルダーの使用をサポートします。

たとえば、 PropertiesComponent を以下のプロパティーファイルで設定している場合は、以下のようになります。

dev.endpoint = result1
test.endpoint = result2
Copy to Clipboard Toggle word wrap

次に、以下のルート定義を使用します。

PropertiesComponent pc = context.getComponent("properties", PropertiesComponent.class);
pc.setPropertyPrefix("${stage}.");
// ...
context.addRoutes(new RouteBuilder() {
    @Override
    public void configure() throws Exception {
        from("direct:start").to("properties:mock:{{endpoint}}");
    }
});
Copy to Clipboard Toggle word wrap

システムプロパティー ステージ を dev (メッセージを mock:result1にルーティングされる)または test (メッセージは mock:result2にルーティングされます)に変更すると、ターゲットエンドポイントを変更できます。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat