第22章 クラス


クラスコンポーネント

Apache Camel 2.4 から利用可能
class: コンポーネントは Bean をメッセージエクスチェンジにバインドします。これは Bean コンポーネントと同じように機能しますが、レジストリーから Bean を検索する代わりに、クラス名に基づいて Bean を作成します。

URI 形式

class:className[?options]
className は、Bean として作成および使用する完全修飾クラス名です。

オプション

Expand
名前 タイプ デフォルト 説明
メソッド 文字列 null Bean が呼び出されるメソッド名。指定のない場合は、Apache Camel はメソッド自体を選択しようとします。曖昧さが発生すると、例外が発生します。詳細は、Bean Binding を参照してください。
multiParameterArray boolean false メッセージボディーから渡されるパラメーターを処理する方法。true の場合、In メッセージボディーはパラメーターの配列である必要があります。
bean.xxx null
Camel 2.17: クラス名から create bean インスタンスで追加オプションを設定します。たとえば、Bean で foo オプションを設定するには、bean.foo=123 を使用します。
URI にクエリーオプションは ?option=value&option=value&.. の形式で追加できます。

使用

クラス コンポーネントを Bean コンポーネントとして使用するだけで、代わりに完全修飾クラス名を指定してクラスコンポーネントを使用します。たとえば、MyFooBean を使用するには、次のようにする必要があります。
from("direct:start").to("class:org.apache.camel.component.bean.MyFooBean").to("mock:result");
MyFooBean で呼び出すメソッドを指定することもできます(例: hello )。
from("direct:start").to("class:org.apache.camel.component.bean.MyFooBean?method=hello").to("mock:result");

作成されたインスタンスでのプロパティーの設定

エンドポイント URI では、作成されたインスタンスに設定するプロパティーを指定できます。たとえば、setPrefix メソッドがある場合です。
// Camel 2.17 onwards
from("direct:start")
    .to("class:org.apache.camel.component.bean.MyPrefixBean?bean.prefix=Bye")
    .to("mock:result");

// Camel 2.16 and older
from("direct:start")
    .to("class:org.apache.camel.component.bean.MyPrefixBean?prefix=Bye")
    .to("mock:result");
また、# 構文を使用して、レジストリーで検索するプロパティーを参照することもできます。
// Camel 2.17 onwards
from("direct:start")
    .to("class:org.apache.camel.component.bean.MyPrefixBean?bean.cool=#foo")
    .to("mock:result");

// Camel 2.16 and older
from("direct:start")
    .to("class:org.apache.camel.component.bean.MyPrefixBean?cool=#foo")
    .to("mock:result");
これは、ID foo でレジストリーから Bean を検索し、MyPrefixBean クラスの作成されたインスタンスで setCool メソッドを呼び出します。
注記
クラス コンポーネントがほぼ同じように機能する Bean コンポーネントの詳細を参照してください。
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る