4.2. Camel Spring Boot スターターについて
Apache Camel には、スターターを使用して Spring Boot アプリケーションを開発できる、Spring Boot スターターモジュールが含まれています。
詳細は、Apache Camel Spring-Boot examples を参照してください。
スターターを使用するには、以下のスニペットを Spring Boot の pom.xml ファイルに追加します。
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-spring-boot-starter</artifactId>
</dependency>
スターターを使用すると、以下のスニペットのように、Camel ルートでクラスを追加できます。これらのルートがクラスパスに追加されると、ルートは自動的に開始されます。
application.properties または application.yml ファイルで Camel アプリケーションをカスタマイズできます。
Camel Spring Boot は、Camel スターターコンポーネントのいずれかを設定するときに、設定ファイル (application.properties または yaml ファイル) の ID 名による Bean の参照をサポートするようになりました。src/main/resources/application.properties (または yaml)ファイルで、Bean ID 名を参照して他の Bean を参照する Camel のオプションを簡単に設定できるようになりました。たとえば、以下のように Bean ID を使用すると、xslt コンポーネントはカスタム Bean を参照できます。
以下のように、IDmyExtensionFactory でカスタム Bean を参照します。
camel.component.xslt.saxon-extension-functions=myExtensionFactory
camel.component.xslt.saxon-extension-functions=myExtensionFactory
以下のように、Spring Boot @Bean アノテーションを使用して作成します。
@Bean(name = "myExtensionFactory")
public ExtensionFunctionDefinition myExtensionFactory() {
}
@Bean(name = "myExtensionFactory")
public ExtensionFunctionDefinition myExtensionFactory() {
}
または、camel-jackson データ形式の Jackson ObjectMapper の場合:
camel.dataformat.json-jackson.object-mapper=myJacksonMapper
camel.dataformat.json-jackson.object-mapper=myJacksonMapper