Sling Model Exporterの開発

この技術的な手順では、Sling Model Exporterで使用するAEMの設定、JSONとしてレンディションするExporterフレームワークを使用した既存のSling Modelの強化、出力をさらにカスタマイズするExporterオプションとJackson注釈の使用方法について説明します。

Sling Model Exporterは、Sling Models v1.3.0で導入されました。この新機能を使用すると、Sling Modelに新しい注釈を追加して、モデルを別のJavaオブジェクトとして書き出す方法、またはJSONなどの別の形式にシリアル化する方法を定義できます。

Apache Slingは、Jackson JSONエクスポーターを提供し、他のWebサービスやJavaScriptアプリケーションなどのプログラムを使用するWebコンシューマーによって、SlingモデルをJSONオブジェクトとして書き出して使用する最も一般的なケースをカバーします。

Sling Model Exporter用のAEMの設定

Sling Model Exporter は、プロジェクトの機能であ Apache Sling り、AEM製品リリースサイクルに直接結び付けられていません。Sling Model Exporter は、AEM 6.3以降と互換性があります。

Sling Model Exporterの使用例

Sling Model Exporter は、HTL(または以前のJSP)を介したHTMLレンディションをサポートするビジネスロジックが既に含まれているSlingモデルを活用し、プログラムWebサービスやJavaScriptアプリケーションで使用するJSONと同じビジネス表現を公開するのに最適です。

Slingモデルエクスポーターの作成

Sling ModelでExporterサポートを有効にするのは、Javaクラスに@Exporter注釈を追加するのと同じくらい簡単です。

Sling Model Exporterオプションの適用

Sling Model Exporter は、最終的にが書き出される方法を指定するために、モデルごとのエクスポーターオプションをエクスポーター実装に渡す Sling Model ことをサポートしています。これらのオプションは、通常、Sling Modelの書き出し方法に「グローバル」に適用されます。これは、以下で説明するインライン注釈を使用して実行できるデータポイントごとに適用されます。

Jackson Exporter オプションは次のとおりです。

Jackson注釈の適用

また、エクスポーター実装では、Sling Modelクラスにインラインで適用できる注釈がサポートされ、データのエクスポート方法をより細かく制御できます。

コードを表示します。

SampleSlingModelExporter.java

サポート資料

このページ