AEM インスタンスにツールをインストールすることなく、XPath クエリーからパッケージを構築する方法

環境

AEM 6.x

手順

以下の手順は、cURL、Python、Java SDK がインストールされている Mac OS、Linux または Windows 上で実行する必要があります。

  1. http://src-aem-host:port/crx/packmgr/index.jsp に移動し、管理者権限でログインしてください。

  2. 「ACLー移行」という名のパッケージを作成します。

  3. 「編集」ボタンをクリックします。

  4. 詳細タブを選択し、AC の処理モードを結合に設定します。

  5. 保存します。

  6. パッケージを作成してダウンロードします。

  7. ファイルシステム上でパッケージに対してこのコマンド実行し、META-INF/vault/filter.xml ファイルを抽出してください。

    jar -xvf ACL-migration-1.0.zip META-INF/vault/filter.xml

  8. 同じディレクトリで、このコマンドを実行して、ソースインスタンスから ACL パスの json ファイルをダウンロードします。ユーザー名とパスワードを設定し、ホストを修正して、xpath クエリー /jcr:root/content//element(*,rep:ACL) を自分のものに置き換えます。

    curl -u admin:admin 'http://aemhost/crx/de/query.jsp?'-G --data '_dc=1507011481908&_charset_=utf-8&type=xpath&stmt=/jcr:root/content//element(*,rep:ACL)&showResults=true' > data.json

  9. generate-package-filter.py ファイルを作成し、python コードを下記のコマンドの内部にペーストします。

  10. data.json が作成されたフォルダーと同じフォルダーから python スクリプトを実行し、META - INF/vault/filter.xml に出力を保存します(filter.xml の既存の内容を置き換えます)。

    python generate-packge-filter.py > META-INF/vault/filter.xml

    import json
    from pprint import pprint
    
    with open('data.json') as data_file:
        data = json.load(data_file)
    
    print("<?xml version=\"1.0\" encoding=\"UTF-8\"?>")
    print("<workspaceFilter version=\"1.0\">")
    for item in data["results"]:
        print("<filter root=\"{}\"/>".format(item["path"]))
    print("</workspaceFilter>")
  11. このコマンドを使用して、zip ファイル内の filter.xml を更新します。

    jar -uvf ACL-migration-1.0.zip META-INF/vault/filter.xml

  12. ソースインスタンスのパッケージマネージャーに zip ファイルをアップロードします。http://src-aem-host:port/crx/packmgr/index.jsp

  13. 「構築」あるいは「再構築」をクリックしてパッケージを構築してください。

  14. ソース AEM サーバーから、パッケージをダウンロードします。

  15. 送信先の AEM サーバーパッケージマネージャーからパッケージをアップロードします:http://dst-aem-host:port/crx/packmgr/index.jsp

  16. 「インストール」をクリックしてインストールを実行します。

 Adobe

ヘルプをすばやく簡単に入手

新規ユーザーの場合

Adobe MAX 2025

Adobe MAX Japan
クリエイターの祭典

2025 年 2 月 13 日
東京ビッグサイト