第179章 JsonPath Language
Camel バージョン 2.13 から利用可能
Camel は JSonPath をサポートし、json メッセージで Expression または Predicate を使用できます。
from("queue:books.new") .choice() .when().jsonpath("$.store.book[?(@.price < 10)]") .to("jms:queue:book.cheap") .when().jsonpath("$.store.book[?(@.price < 30)]") .to("jms:queue:book.average") .otherwise() .to("jms:queue:book.expensive")
179.1. JsonPath オプション
JsonPath 言語は、以下に示す 7 つのオプションをサポートします。
Name | デフォルト | Java タイプ | 説明 |
---|---|---|---|
resultType |
| 結果タイプのクラス名を設定します(出力のタイプ)。 | |
suppressExceptions |
|
| PathNotFoundException などの例外を非表示にするかどうか。 |
allowSimple |
|
| JsonPath 式でインライン化された簡単な例外を許可するかどうか。 |
allowEasyPredicate |
|
| 単純な述語パーサーを使用して事前に解析可能な述語を使用することを許可するかどうか。 |
writeAsString |
|
| 各行/要素の出力を、Map/ POJO の値ではなく JSON String の値として記述するかどうか。 |
headerName |
| メッセージボディーの代わりに入力として使用するヘッダーの名前。 | |
trim |
|
| 値をトリミングして先頭および末尾の空白と改行を削除するかどうか。 |