# cJSLT

[\[JSLT templates\] (JSLTテンプレート)](https://github.com/schibsted/jslt)を使ってJSONメッセージを変換します。

詳細は、Apache Camelのドキュメンテーションhttps://camel.apache.org/components/latest/をご覧ください。

## cJSLTの標準プロパティ

これらのプロパティは、標準ジョブのフレームワークで実行されているcJSLTを設定衣するために使われます。

標準のcJSLTコンポーネントは、Transformationファミリーに属しています。

## 基本設定

| プロパティ | 説明 |
| --- | --- |
| [Type] (タイプ) | JSLTテンプレートの設定方法を選択します。<br><br><ul> <li> <p> <span>[Repository] (リポジトリー)</span>: JSLTテンプレートは、既存のリポジトリーリソースファイルから選択されます。</p> </li> <li> <p> <span>[File Path] (ファイルパス)</span>: JSLTテンプレートは、ローカルファイルシステムから選択されます。</p> </li> <li> <span>[Built-In] (組み込み)</span>: JSLTテンプレートは、コンポーネント内に直接入力されます。</li> </ul> |
| [Resource / Version] (リソース / バージョン) | このフィールドは、[Type] (タイプ)リストから[Repository] (リポジトリー)が選択されている場合に表示されます。[...]をクリックし、JSLTテンプレートが含まれているリソースファイルを選択します。複数のバージョンのリソースが利用可能な場合は、リソースのバージョンを選択します。 |
| [Resource URI] (リソースURI) | このフィールドは、[Type] (タイプ)リストから[Fixed Path] (ファイルパス)が選択されている場合に表示されます。ローカルファイルシステムにあるJSLTテンプレートファイルへのパスを入力します。 |
| [Cache Resource] (キャッシュリソース) | このオプションは、[Type] (タイプ)リストから[Repository] (リポジトリー)か[File Path] (ファイルパス)が選択されている場合に表示されます。このチェックボックスを選択すると、メッセージごとにリソースを再ロードせずにキャッシュします。 |
| Language | このオプションは、[Type] (タイプ)リストで[Built-In] (組み込み)が選択されている場合に表示されます。<br><br>使用する式の言語を以下から選択します: None、Bean、Constant、CorrelationID、EL、Groovy、Header、JoSQL、JSonPath、JXPath、MVEL、OGNL、PHP、Property、Python、Ruby、Simple、SpEL、SQL、XPath、XQuery。<br><br>事前定義されたJava Beanを呼び出してJSLTテンプレートが返されるようにしたい場合は、Beanを選択します。 |
| [Code Style] (コードスタイル) | このオプションは、[Type] (タイプ)リストで[Built-In] (組み込み)が選択されている場合に表示されます。次の中から選択します:<br><br><ul> <li> <span>Java</span>: JavaコードはJSLTテンプレート内で使用できます。<span>\"</span>のように、引用符はエスケープする必要があります。</li> <li> <span>[Native] (ネイティブ)</span>: JSLTテンプレート内ではJavaコードを使用できません。ただし、引用符をエスケープする必要がないので、JSLTテンプレートはより読みやすくなります。</li> </ul> |
| [JSLT template] (JSLTテンプレート) | このオプションは、[Type] (タイプ)リストで[Built-In] (組み込み)が選択されている場合に表示されます。受信するJSONメッセージに適用するJSLTテンプレートを入力します。<br><br>言語を使って式を作成する方法は、http://camel.apache.org/languages.htmlをご覧ください。 |
| [Pretty Print] (プリティプリント) | このチェックボックスを選択すると、出力されるJSONメッセージが読みやすい形式になります。このチェックボックスをオフにすると、出力が1行になります。 |

## 詳細設定

| プロパティ | 説明 |
| --- | --- |
| [URI Options] (URIオプション) | オプションの引数を対応するテーブルに設定します。[+]を必要な回数だけクリックして、テーブルに引数を追加します。次に、対応する値フィールドをクリックして、値を入力します。利用できるURIオプションについては、https://camel.apache.org/components/3.21.x/jslt-component.htmlサイトをご覧ください。 |

## 使用方法

| 使用方法のガイダンス | 説明 |
| --- | --- |
| **使用ルール** | cJSLTは、ルートで中間または終了のコンポーネントとして使用できます。 |
| 制限事項 | 入力内容はJSON形式であることが必要です。 |

**関連概念**

[JSLT式を使ってJSON形式間でメッセージを変換](https://help.qlik.com/talend/ja-JP/mediation-components/8.0/mediation-json-processing/cjslt-transforming-message-between-json-formats-using-jslt-expression)