【問題/事象】
データ移行を目的に作成したパッケージを、新たに構築したAEMにインストールした場合に、以下のエラーが発生しインストールが失敗することがあります。
本記事では、この事象について原因と対応方法を説明します。
エラーログ例:
*ERROR* [qtp2105113305-2613] org.apache.jackrabbit.vault.fs.io.Importer Error while committing <package contents path> javax.jcr.RepositoryException: OakName0001: Invalid namespace prefix(...): custom
【環境】
AEM 6.5
【対応方法】
エラーが発生したAEMのCRX Explorerにアクセスし、パッケージを作成したAEMを確認しながら不足している名前空間を登録します。
1. CRX Explorer(http://localhost:4502/crx/explorer/index.jsp)にアクセスし、adminユーザーでログイン
2. Node Type Administrationを選択
3. Node Type Administration新規ウィンドウのヘッダー部にあるNamespacesを選択
4. Namespaces新規ウィンドウの下部にあるNewを選択
5. ポップアップにURI及び、名前空間にエラーログ例に記載されているcustomを入力しOKを選択
6. Package Managerからパッケージのインストールを再実行し、正常に取り込まれることを確認
【原因】
パッケージに含まれるノードやプロパティ名に、未登録の名前空間が存在する場合に発生します。
(名前空間はメタデータを識別するIDのことです。例えば、cqやjcrが製品標準で登録済みです。)
問題/事象のエラーログ例に当て嵌めると、メッセージの最後にあるcustomが未登録であり、custom:で始まるノード名やプロパティ名がパッケージ内に存在していることが分かります。
データ移行時にこの事象が発生しやすいのでご留意ください。
<留意事項>
・上記は以下記事の抄訳/翻訳となります。
KB記事タイトル(英語) . Adobe Experience Manager: How to resolve "OakName0001: Invalid namespace prefix" error during package installation, August 19, 2022, https://experienceleague.adobe.com/docs/experience-cloud-kcs/kbarticles/KA-20396.html, (参照 2022-08-19).
・本記事にいただいたコメントへの返信はお約束できません。あらかじめご了承ください。