アイテムのプレビューを試みた際に「Object reference not set to an instance of an object」エラーが発生する


概要

Pages、エクスペリエンス エディターまたはコンテンツ エディターでのアイテムのプレビューに失敗し、またdefault\anonymousユーザーがそのアイテムを閲覧した際に以下のエラーが発生する可能性があります。

Exception: System.NullReferenceException
Message: Object reference not set to an instance of an object.
Source: Sitecore.XA.Foundation.Theming
at Sitecore.XA.Foundation.Theming.ThemingContext.GetThemeItemInternal(Item item, DeviceItem device)
at Sitecore.XA.Foundation.SitecoreExtensions.Extensions.ContextExtensions.GetScopedValue[T](IContext context, String key, Func`1 func)
at Sitecore.XA.Foundation.Theming.ThemingContext.GetThemeItem(Item item, DeviceItem device)
at Sitecore.XA.Foundation.Theming.CompatibilityMode.CompatibilityModeProvider.GetCompatibilityMode(Item currentItem, DeviceItem device)
at Sitecore.XA.Foundation.Theming.Pipelines.HttpRequestBegin.AppendCompatibilityModeHeader.Process(HttpRequestArgs args)

解決策

この事象を解決するには、anonymousユーザーに読み取りアクセスを付与し、default/anonymousユーザーがアイテムをプレビューできることを確認してください。

註: /sitecore/system/Settings/Foundation/Experience Accelerator/Theming/Theming Modes配下のすべてのアイテムおよびその親アイテムについて、anonymousユーザーに対する読み取りアクセスが付与されていることを確認してください。