JSS上のSXAのデプロイでレイアウト サービスの構成をsxa-jssに変更すると、ページ レンダリング中に以下のエラーが発生する場合があります:
Server Error in '/' Application. Could not find configuration node: databases/database[@id='master'] Description: An unhandled exception occurred. Exception Details: System.InvalidOperationException: Could not find configuration node: databases/database[@id='master']
この問題は、サイトのデータベースがWebに設定されていることによって、ヘッドレス アプリケーションがContentDeliveryロールで動作するSitecoreサーバーへの接続の確立に失敗した場合に発生します。これによりMasterデータベースへのアクセスができなくなり、Next.jsアプリケーションがSitecoreへの接続に失敗します。
この問題を解決するには、ソリューションをSitecore XP 10.4.0またはそれ以降にアップグレードします。
または代替案として、設定パッチファイルを作成して、CDサーバーの<databaseName>タグに以下の値を設定して事象の影響を緩和することができます:
<?xml version="1.0" encoding="utf-8" ?> <configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:set="http://www.sitecore.net/xmlconfig/set/"> <sitecore> <layoutService> <configurations> <config name="sxa-jss"> <requestContext type="Sitecore.LayoutService.Configuration.DefaultRequestContext, Sitecore.LayoutService"> <databaseName>web</databaseName> </requestContext> </config> </configurations> </layoutService> </sitecore> </configuration>