JcrResourceBundleProvider 設定でパスが見つからないことに起因する i18n 問題の解決

この記事では、サービスパック 6.5.17 から 6.5.20 にアップグレードした後に UI 文字列の 国際化(i18n)機能が期待どおりに動作しなくなるAdobe Experience Manager(AEM)の問題について説明します。この問題を解決するには、JcrResourceBundleProvider 設定の included.paths プロパティに /etc を追加します。

説明 description

環境

Adobe Experience Manager(AEM)のバージョン:6.5.20

影響を受ける環境:実稼働(オーサーインスタンス)

問題

Adobe Experience Manager(AEM)をサービスパック 6.5.17 から 6.5.20 にアップグレードした後、実稼動オーサー環境で UI 文字列の 国際化(i18n) 機能が期待どおりに動作しませんでした。

根本原因

org.apache.sling.i18n.impl.JcrResourceBundleProvider 設定に /etc パスが見つからず、そのパスに保存されている特定のリソースバンドルまたは翻訳にシステムからアクセスできませんでした。

解決策 resolution

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

Configuration Manager へのアクセス

  1. AEM インスタンスの /system/console/configMgr に移動します。

  2. org.apache.sling.i18n.impl.JcrResourceBundleProvider 設定を見つけます。

  3. JcrResourceBundleProvider 設定を更新して、included.paths プロパティ /etc 追加します。

    設定例:

    code language-none
    "included.paths": [
      "/libs",
      "/apps",
      "/etc"
      ]
    

問題が解決しない場合のオプションの手順

  1. AEM インスタンスを再起動して、設定の変更を適用します。
  2. AEMおよび Dispatcher のキャッシュをクリアして、更新された設定が反映されるようにします。
  3. 様々なコンポーネントとページをテストして、i18n キーが期待どおりに解決されていることを確認します。
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f