AEM as a Cloud Serviceでのデプロイメントエラーの解決

この記事では、リポジトリ初期化スクリプトのカスタマイズが原因で発生する、Adobe Experience Manager(AEM)as a Cloud Serviceのデプロイメントエラーについて説明します。 開発ステージに機能ブランチをデプロイする場合、これらのエラーが原因でデプロイメントが成功しなくなり、ログに簡単に表示できなくなる可能性があります。 デバッグログを分析すると、問題が修正される。

説明 description

環境

  • 製品: Adobe Experience Manager(AEM)as a Cloud Service - Sites
  • ステージ: 開発
  • 制約: Felix コンソールを使用した直接変更は制限されています。

問題/症状

  • リポジトリー初期化エラーが原因で機能ブランチのデプロイメントに失敗する。

  • ログに次のようなメッセージが表示されます。

    code language-none
    Exception in a SlingRepositoryInitializer, SlingRepository service registration aborted
    javax.jcr.RepositoryException: Applying repoinit operation failed despite retry; set loglevel to DEBUG to see all exceptions.
    Last exception message from "Configuration PID 310, script[ 0] " was: CreatePath execution failed at cq(sling:Folder): javax.jcr.nodetype.ConstraintViolationException: org.apache.jackrabbit.oak.spi.state.ReadyOnlyBuilderException: This builder is read-only...
    
  • エラーは、リポジトリの読み取り専用ノードまたは不変部分の変更を試みたことを示します。

解決策 resolution

この問題を解決するには、次の手順に従います。

  1. repo-init 操作のログレベルを DEBUG に設定して、リポジトリの初期化中に詳細な例外情報を取得します。 Felix コンソールを介した直接アクセスは制限されているので、プロジェクト内でカスタムログ設定を使用します。

  2. プロジェクトの /apps/<your-project>/config/ フォルダーに OSGi 設定ファイル(com.adobe.granite.logging.impl.LogManagerFactory.config など)を作成します。

    • このファイルに次のプロパティを含めます。

      code language-none
      loggers=[ "org.apache.sling.jcr.repoinit.impl.RepositoryInitializerFactory"]
      org.apache.sling.jcr.repoinit.impl.RepositoryInitializerFactory.log.level=DEBUG
      
  3. 更新された設定をCloud Managerを通じてデプロイし、デプロイ後に repo-init 操作の詳細なデバッグログが表示されることを確認します。

  4. デバッグログで、リポジトリの初期化中のエラーに関する追加のコンテキストを確認し、権限のない変更の兆候や読み取り専用ノードの変更の試みを探します。

  5. repo-init スクリプトが、リポジトリの不変部分(システムパスなど)内のノードの作成または変更を試みないことを確認します。

  6. CreatePath として定義されたノードをターゲットとする cq(sling:Folder) コマンドが読み取り専用領域にある場合は、それらのコマンドを削除または調整します。 新しいノードまたは構造を追加する必要がある場合は、許可されたパスにデプロイされたコンテンツパッケージを使用して、これらの変更を個別にパッケージ化します。

次の手順は、AEMのシステムパスの制約を考慮しながら、デプロイメントエラーを特定して修正するのに役立ちます。

関連資料

AEM as a Cloud Service ビルドとデプロイメントのデバッグ

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f