AEM Commerce for AEM as a Cloud Service の開発 develop
AEM as a Cloud Service 用の Commerce Integration Framework(CIF)に基づく AEM Commerce プロジェクトの開発は、AEM as a Cloud Service 上の他の AEM プロジェクトと同じルールとベストプラクティスに従います。最初に次の点を確認します。
AEM as a Cloud Service SDK を使用したローカル開発 local
CIF プロジェクトを使用する場合は、ローカル開発環境を使用することをお勧めします。AEM as a Cloud Service 用に提供された CIF アドオンは、ローカル開発にも使用できます。このファイルは、ソフトウェア配布ポータルからダウンロードできます。
CIF アドオンは Sling 機能アーカイブとして提供されます。ソフトウェア配布ポータルで利用できる zip ファイルには、2 つの Sling 機能アーカイブファイルが含まれています。1 つは AEM オーサー用、もう 1 つは AEM パブリッシュインスタンス用です。
AEM as a Cloud Service は初めてですか? AEM as a Cloud Service SDK を使用してローカル開発環境をセットアップするための、より詳細なガイドを参照してください。
必要なソフトウェア
以下をローカルにインストールしておく必要があります。
CIF アドオンへのアクセス
CIF アドオンは、ソフトウェア配布ポータルから zip ファイルとしてダウンロードできます。Zip ファイルには、CIF アドオンが Sling 機能アーカイブ として含まれています。これは、AEM パッケージではありません。SDK リストには、AEM as a Cloud Serviceライセンスでアクセスできます。
ローカル設定
AEM as a Cloud Service SDK を使用するローカル CIF アドオン開発の場合は、次の手順に従います。
-
最新の AEM as a Cloud Service SDK を取得します。
-
AEM .jar を解凍して
crx-quickstart
フォルダーを作成し、次を実行します。code language-bash java -jar <jar name> -unpack
-
crx-quickstart/install
フォルダーの作成 -
CIF アドオンの正しい Sling 機能アーカイブファイルを
crx-quickstart/install
フォルダーにコピーします。CIF アドオンの zip ファイルには、2 つの Sling 機能アーカイブ
.far
ファイルが含まれています。ローカル AEM as a Cloud Service SDK を実行する方法に応じて、AEM オーサーまたは AEM パブリッシュに対して正しいものを使用してください。 -
Adobe Commerce GraphQL エンドポイントを保持する
COMMERCE_ENDPOINT
という名前のローカル OS 環境変数を作成します。例:macOS X
code language-bash export COMMERCE_ENDPOINT=https://<yourcommercesystem>/graphql
Windows の例:
code language-bash set COMMERCE_ENDPOINT=https://<yourcommercesystem>/graphql
この変数は、AEM でコマースシステムへの接続に使用されます。また、CIF アドオンには、Commerce GraphQL エンドポイントをローカルで使用できるようにするローカルリバースプロキシが含まれています。このプロキシは、CIF オーサリングツール(製品コンソールおよびピッカー)で使用され、GraphQL の直接呼び出しを行う CIF クライアントサイドコンポーネントにも使用されます。
この変数は、AEM as a Cloud Service 環境に対しても設定する必要があります。変数について詳しくは、AEM as a Cloud Service の OSGi の設定を参照してください。
-
(オプション)ステージング済みカタログ機能を有効にするには、Adobe Commerce インスタンスの統合トークンを作成する必要があります。概要の手順に従って、トークンを作成します。
COMMERCE_AUTH_HEADER
という名前の OSGi シークレットを次の値に設定します。code language-xml Authorization: Bearer <Access Token>
シークレットについて詳しくは、AEM as a Cloud Service の OSGi の設定を参照してください。
-
AEM as a Cloud Service SDK を開始します。
OSGI コンソールを使用して設定を確認します:http://localhost:4502/system/console/osgi-installer
。このリストには、機能モデルファイルで定義されている CIF アドオン関連バンドル、コンテンツパッケージ、OSGI 設定が含まれている必要があります。
プロジェクトのセットアップ project
AEM as a Cloud Service 用の CIF プロジェクトを Bootstrap するには、2 つの方法があります。
AEM プロジェクトアーキタイプの使用
CIF を使い始めるために事前に設定されたプロジェクトを Bootstrap するには、AEM プロジェクトアーキタイプが主なツールです。CIF コアコンポーネントと必要なすべての設定を、1 つの追加オプションで生成されたプロジェクトに含めることができます。
AEM プロジェクトの生成方法については、AEM プロジェクトアーキタイプの「使用手順」を参照してください。プロジェクトに CIF を含めるには、includeCommerce
オプションを使用します。
次に例を示します。
mvn -B org.apache.maven.plugins:maven-archetype-plugin:3.2.1:generate \
-D archetypeGroupId=com.adobe.aem \
-D archetypeArtifactId=aem-project-archetype \
-D archetypeVersion=35 \
-D appTitle="My Site" \
-D appId="mysite" \
-D groupId="com.mysite" \
-D includeCommerce=y
CIF コアコンポーネントは、提供されている all
パッケージを含めるか、CIF コンテンツパッケージと関連する OSGI バンドルを個別に使用することで、任意のプロジェクトで使用できます。CIF コアコンポーネントを手動でプロジェクトに追加するには、次の依存関係を使用します。
<dependency>
<groupId>com.adobe.commerce.cif</groupId>
<artifactId>core-cif-components-apps</artifactId>
<type>zip</type>
<version>x.y.z</version>
</dependency>
<dependency>
<groupId>com.adobe.commerce.cif</groupId>
<artifactId>core-cif-components-config</artifactId>
<type>zip</type>
<version>x.y.z</version>
</dependency>
<dependency>
<groupId>com.adobe.commerce.cif</groupId>
<artifactId>core-cif-components-core</artifactId>
<version>x.y.z</version>
</dependency>
<dependency>
<groupId>com.adobe.commerce.cif</groupId>
<artifactId>graphql-client</artifactId>
<version>x.y.z</version>
</dependency>
<dependency>
<groupId>com.adobe.commerce.cif</groupId>
<artifactId>magento-graphql</artifactId>
<version>x.y.z</version>
</dependency>
AEM Venia 参照用ストアの使用
CIF プロジェクトを開始する 2 つ目の方法は、AEM Venia 参照用ストアをコピーして使用する方法です。AEM Venia 参照用ストアは、AEM 用の CIF コアコンポーネントの使用方法を示すサンプルのストアフロントアプリケーションです。これは、ベストプラクティス例として意図されていて、独自機能を開発するための有望な出発点としての役割も果たします。
Venia 参照用ストアを使い始めるには、Git リポジトリをクローンし、必要に応じてプロジェクトをカスタマイズし始めます。