第22章 クラス


クラスコンポーネント

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

URI 形式

class:className[?options]
Copy to Clipboard Toggle word wrap
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");
Copy to Clipboard Toggle word wrap
MyFooBean で呼び出すメソッドを指定することもできます(例: hello )。
from("direct:start").to("class:org.apache.camel.component.bean.MyFooBean?method=hello").to("mock:result");
Copy to Clipboard Toggle word wrap

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

エンドポイント 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");
Copy to Clipboard Toggle word wrap
また、# 構文を使用して、レジストリーで検索するプロパティーを参照することもできます。
// 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");
Copy to Clipboard Toggle word wrap
これは、ID foo でレジストリーから Bean を検索し、MyPrefixBean クラスの作成されたインスタンスで setCool メソッドを呼び出します。
注記
クラス コンポーネントがほぼ同じように機能する Bean コンポーネントの詳細を参照してください。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat