3.4. スターター設定


明確でアクセスしやすい設定は、アプリケーションの重要な部分です。Camel スターター は、Spring Boot の 外部設定 メカニズムを完全にサポートします。より複雑なユースケースでは、Spring Bean を介してこのようなスターター設定することもできます。

3.4.1. 外部設定の使用

内部的には、すべての スターター は Spring Boot の ConfigurationProperties を介して設定されます。各設定パラメーターは、さまざまな 方法 で設定できます (application.[properties|json|yaml] ファイル、コマンドライン引数、環境変数など)。パラメーターの形式は camel.[component|language|dataformat].[name].[parameter] です。

たとえば、MQTT5 ブローカーの URL を設定するには、次のように設定できます。

camel.component.paho-mqtt5.broker-url=tcp://localhost:61616

また、CSV データフォーマットの delimeter をセミコロン (;) にするように設定することも可能です。

camel.dataformat.csv.delimiter=;

Camel は、プロパティーを目的のタイプに設定するときに、型コンバーター メカニズムを使用します。

#bean:name を使用して、レジストリー内の Bean を参照できます。

camel.component.jms.transactionManager=#bean:myjtaTransactionManager

通常、Bean は Java で作成されます。

@Bean("myjtaTransactionManager")
public JmsTransactionManager myjtaTransactionManager(PooledConnectionFactory pool) {
    JmsTransactionManager manager = new JmsTransactionManager(pool);
    manager.setDefaultTimeout(45);
    return manager;
}

Bean は 設定ファイル で作成することもできますが、これは複雑なユースケースには推奨されません。

3.4.2. Bean の使用

スターターは、Spring Bean を介して作成および設定することもできます。スターターを作成する前に、すでに存在する場合、Camel は最初にその名前でレジストリーを検索します。たとえば、Kafka コンポーネントを設定するには、次のようにします。

@Bean("kafka")
public KafkaComponent kafka(KafkaConfiguration kafkaconfiguration){
    return ComponentsBuilderFactory.kafka()
                        .brokers("{{kafka.host}}:{{kafka.port}}")
                        .build();
}

Bean 名は、設定するコンポーネント、データ形式、または言語の名前と同じである必要があります。Bean 名がアノテーションで指定されていない場合は、メソッド名に設定されます。

一般的な Camel Spring Boot プロジェクトでは、外部設定と Bean の組み合わせを使用してアプリケーションを設定します。Camel Spring Boot プロジェクトを設定する方法の詳細な例は、examples repository を参照してください。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る