第188章 JsonPath 言語

Camel バージョン 2.13 以降で利用可能

Camel は JSonPath をサポートし、JSON メッセージで式または述語を使用できるようにします。

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")

188.1. JSonPath オプション

JSonPath 言語は、以下にリストされている 7 個のオプションをサポートしています。

名前デフォルトJava タイプ説明

resultType

 

String

結果の型 (出力からの型) のクラス名を設定します

suppressExceptions

false

Boolean

PathNotFoundException などの例外を抑制するかどうか。

allowSimple

true

Boolean

JSonPath 式でインライン化された単純な例外を許可するかどうか

allowEasyPredicate

true

Boolean

簡単な述語パーサーを使用して述語を事前解析できるようにするかどうか。

writeAsString

false

Boolean

各行/要素の出力をマップ/POJO 値ではなく JSON 文字列値として書き込むかどうか。

headerName

 

String

メッセージボディーの代わりに入力として使用するヘッダーの名前

trim

true

Boolean

値をトリミングして、先頭および末尾の空白と改行を削除するかどうか