第3章 機能
本章では、Camel on EAP 機能に関して必要な情報を提供します。
Camel コンテキストの定義
Camel コンテキストは、サブシステム定義の一部として、スタンドアロンの camel.xml および domain.xml で設定できます。以下に例を示します。
<subsystem xmlns="urn:jboss:domain:camel:1.0">
<camelContext id="system-context-1">
<![CDATA[
<route>
<from uri="direct:start"/>
<transform>
<simple>Hello #{body}</simple>
</transform>
</route>
]]>
</camelContext>
</subsystem>Camel コンテキストのデプロイメント
以下のように -camel-context.xml 接尾辞を使用して、Camel コンテキストを JBoss EAP にデプロイできます。
- スタンドアロンの XML ファイルとして
- サポートされる別のデプロイメントの一部として
デプロイメントには、複数の -camel-context.xml ファイルが含まれる場合があります。
デプロイされた Camel コンテキストは、以下のように CDI 注入が可能です。
@Resource(lookup = "java:jboss/camel/context/mycontext") CamelContext camelContext; [discrete] ### Management Console
デフォルトでは、管理コンソールへのアクセスは保護されます。したがって、最初に管理ユーザーを設定する必要があります。
$ bin/add-user.sh What type of user do you wish to add? a) Management User (mgmt-users.properties) b) Application User (application-users.properties)
Hawt.io コンソールには、サブシステム設定からの camel コンテキストが表示されるはずです。

Arquillian テストのサポート
Camel on EAP テストスイートは、 WildFly Arquillian 管理コンテナーを使用します。これにより、すでに実行している JBoss EAP インスタンスへ接続したり、必要に応じてスタンドアロンのサーバーインスタンスを起動したりできます。
多数のテストエンリッチャーが実装されており、これらの Camel on EAP 固有のタイプを Arquillian テストケースに注入できます。
@ArquillianResource CamelContextFactory contextFactory; @ArquillianResource CamelContextRegistry contextRegistry;