257.6. Camel への変換のリクエスト


一部の Camel DSL で定義されるルートは、リアクティブストリームフレームワーク内で使用して、特定の変換を実行できます(例: 同じメカニズムを使用してデータを http エンドポイントに送信し、続行します)。

以下のスニペットは、RxJava 関数コードが Camel に読み込みファイルおよびマーシャリングファイルのタスクをリクエストする方法を示しています。

CamelReactiveStreamsService camel = CamelReactiveStreams.get(context);

// Process files starting from their names
Flowable.just(new File("file1.txt"), new File("file2.txt"))
    .flatMap(file -> camel.toStream("readAndMarshal", String.class))
    // Camel output will be converted to String
    // other steps
    .subscribe();

これを機能させるには、以下のようなルートを Camel コンテキストで定義する必要があります。

from("reactive-streams:readAndMarshal")
.marshal() // ... other details

257.6.1. direct API を使用した Camel への変換のリクエスト

代替アプローチは、URI エンドポイントを直接リアクティブフローで使用することです。

CamelReactiveStreamsService camel = CamelReactiveStreams.get(context);

// Process files starting from their names
Flowable.just(new File("file1.txt"), new File("file2.txt"))
    .flatMap(file -> camel.to("direct:process", String.class))
    // Camel output will be converted to String
    // other steps
    .subscribe();

toStream の代わりに to() メソッドを使用する場合は、"reactive-streams:" エンドポイントを使用してルートを定義する必要はありません(hood では使用されません)。

この場合、Camel 変換は以下を行います。

from("direct:process")
.marshal() // ... other details
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る