AEM Commerce の開発 develop
AEM 向けコマース統合フレームワーク(CIF)に基づく AEM Commerce プロジェクトの開発でも、他の AEM プロジェクトと同じルールとベストプラクティスに従います。最初に以下を確認します。
AEM Commerce のローカル開発 local
CIF プロジェクトを使用する場合は、ローカル開発環境を使用することをお勧めします。
AEM Commerce Add-On for AEM 6.5 アドオンCIF アドオンは、ローカル開発にも使用でき、AEM パッケージとしても提供されます。これは、 ソフトウェア配布ポータルから機能パックとしてダウンロードできます。
必要なソフトウェア
以下をローカルにインストールしておく必要があります。
- ローカル AEM 6.5
- AEM 6.5 サービスパック 7 以降
- Java 11
- Apache Maven(3.3.9 以降)
- Node LTS
- npm 6 以降
- Git
CIF アドオンへのアクセス
CIF アドオンは、 ソフトウェア配布ポータルからダウンロードできます。「AEM Commerce add-on」を検索してください。
ローカル設定
AEM と CIF アドオンを使用するローカル CIF プロジェクト開発の場合は、次の手順に従います。
-
AEM 6.5 リリースを入手し、AEM 6.5 サービスパックをインストールします。AEM 6.5 サービスパック 7 が必要ですが、入手可能な最新のサービスパックをインストールすることをお勧めします。
-
AEM.jar を解凍し、
crx-quickstart
フォルダーを作成します。次を実行します。code language-bash java -jar <jar name> -unpack
-
crx-quickstart/install
フォルダーの作成 -
ソフトウェア配布ポータルからダウンロードした CIF アドオンのすべてのパッケージを
crx-quickstart/install
フォルダーにコピーします。
- AEM クイックスタートを起動します。
OSGI コンソールを使用して設定を確認します:http://localhost:4502/system/console/osgi-installer
。このリストには、CIF アドオン関連バンドル、コンテンツパッケージ、OSGI 設定が含まれている必要があります。すべてのバンドルが起動されていることを確認します。
プロジェクトのセットアップ project
CIF を使用して AEM Commerce プロジェクトを開始する方法は 2 とおりあります。
AEM プロジェクトアーキタイプの使用
CIF を使い始めるために事前に設定されたプロジェクトをブートストラップするには、AEM プロジェクトアーキタイプが主なツールです。CIF コアコンポーネントと必要なすべての設定を、生成されたプロジェクトに 1 つの追加オプションで含めることができます。
AEM プロジェクトの生成方法については、AEM プロジェクトのアーキタイプの「使用手順」を参照してください。プロジェクトに CIF を含めるには、includeCommerce
オプションを使用します。
例:
mvn -B archetype:generate \
-D archetypeGroupId=com.adobe.granite.archetypes \
-D archetypeArtifactId=aem-project-archetype \
-D aemVersion=6.5.5 \
-D appTitle="My Site" \
-D appId="mysite" \
-D groupId="com.mysite" \
-D frontendModule=general \
-D includeExamples=n \
-D includeCommerce=y
提供されている all
パッケージを含めるか、CIF コンテンツパッケージと関連する OSGI バンドルを個別に使用することで、CIF コアコンポーネントを任意のプロジェクトで使用できます。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 リポジトリーをコピーし、必要に応じてプロジェクトをカスタマイズします。
classic
プロファイルを使用します。コマースシステムへの AEM の接続
プロジェクトをコマースシステムに接続するには、コマースシステムの GraphQL エンドポイントを AEM に設定する必要があります。
AEM プロジェクトアーキタイプで生成されたプロジェクトにも、AEM Venia 参照用ストアで生成されたプロジェクトにも、デフォルト設定が既に含まれており、これを調整する必要があります。
com.adobe.cq.commerce.graphql.client.impl.GraphqlClientImpl~default.cfg.json
の url
の値を、プロジェクトで使用されるコマースシステムの GraphQL エンドポイントに置き換えます。
AEM Commerce アドオンと CIF コアコンポーネントは、AEM サーバーを介して、またはブラウザーを介して直接、コマース GraphQL エンドポイントに接続します。クライアントサイドの CIF コアコンポーネントと CIF アドオンのオーサリングツールは、デフォルトで /api/graphql
に接続します。必要に応じて、 CIF Cloud Service 設定で調整できます(以下を参照)。
CIF アドオンは、/api/graphql
で GraphQL プロキシサーブレットを提供します。ローカルの AEM Dispatcher を使用する予定がない場合は、GraphQL プロキシサーブレットも設定することをお勧めします。
http://localhost:4502/system/console/configMgr に移動し、Adobe CIF GraphQL Proxy Configuration
サービスの OSGI 設定を作成します。上記の GraphQL クライアントで使用したのと同じ GraphQL エンドポイントを、コマースシステムで使用します。