第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;