第77章 XPath
Camel は XPath をサポートし、式 または 述語 を DSL で使用できるようにします。
たとえば、XPath を使用して、メッセージフィルター で述語を作成したり、Recipient List の式として作成したりできます。
77.1. XPath 言語オプション リンクのコピーリンクがクリップボードにコピーされました!
XPath 言語は、以下に示す 10 個のオプションをサポートします。
| 名前 | デフォルト | Java タイプ | 説明 |
|---|---|---|---|
| documentType |
| ドキュメントタイプのクラスの名前。デフォルト値は org.w3c.dom.Document です。 | |
| resultType |
| 結果の型のクラス名を設定します(出力からタイプ)。デフォルトの結果のタイプは NodeSet です。 列挙値:
| |
| saxon |
| Saxon を使用するかどうか。 | |
| factoryRef |
| レジストリーで検索するためのカスタム XPathFactory への参照。 | |
| objectModel |
| 使用する XPath オブジェクトモデル。 | |
| logNamespaces |
| トラブルシューティング中に役立つ namespace をログに記録するかどうか。 | |
| headerName |
| メッセージボディーの代わりに入力として使用するヘッダーの名前。 | |
| threadSafety |
| xpath 式の返された結果に対してスレッドセーフを有効にするかどうか。これは、結果の型に NODESET を使用する場合に適用され、返されるセットには複数の要素があります。この場合、Camel Splitter EIP から並列処理モードで NODESET を同時に処理すると、スレッドセーフな問題が発生する可能性があります。このオプションは、ノードの永続的なコピーを実行して並行処理の問題を防ぎます。アプリケーションで camel-saxon または Saxon を使用している場合は、このオプションをオンにすることが推奨されます。Saxon にはスレッドセーフの問題があり、このオプションをオンにすると阻止できます。 | |
| preCompile |
| 初期化フェーズで xpath 式の事前コンパイルを有効にするかどうか。事前コンパイルはデフォルトで有効になっています。これは、たとえば、アプリケーションがコンパイル前にコンパイルされている場合(camel-quarkus など)、JVM ランタイムではなくビルドされたオペレーティングシステムの xpath ファクトリーを読み込む場合など、開始フェーズでコンパイルフェーズが必要な場合に使用できます。 | |
| trim |
| 値をトリミングして、先頭および末尾の空白と改行を削除するかどうか。 |