検索

294.3. サンプル

download PDF

294.3.1. 式のテンプレート

式のテンプレートが有効にされているため、SpEL 式を #{ } 区切り文字で囲む必要があります。これにより、SpEL 式と正規表現を組み合わせて、非常に軽量のテンプレート言語として使用できます。

たとえば、以下のルートを作成する場合は、以下のようになります。

from("direct:example")
    .setBody(spel("Hello #{request.body}! What a beautiful #{request.headers['dayOrNight']}"))
    .to("mock:result");

上記のルートでは、spel は、org.apache.camel.language.spelExpression.spelExpression.spel からインポートする必要のある static メソッドです。これは、spel を、setBody メソッドにパラメーターとして渡される式として使用するためです。Fluent API を使用する場合は、代わりにこれを行うことができます。

from("direct:example")
    .setBody().spel("Hello #{request.body}! What a beautiful #{request.headers['dayOrNight']}")
    .to("mock:result");

setBody() メソッドの spel メソッドを使用することに注意してください。また、org.apache.camel.language.spelExpression.spelExpression.spelExpression.spel から spel メソッドを静的にインポートする必要はありません。

そして、本文に文字列 "gitops" と、値が "day" のヘッダー "dayOrNight" を持つメッセージを送信します。

template.sendBodyAndHeader("direct:example", "World", "dayOrNight", "day");

mock:result の出力は "Hello World! になります。異常な日"

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.