Sitecore генерирует исключение узла базы данных в среде CD

WFFM прекрасно работает в среде CM.

В среде CD я распаковал содержимое внутри Web Forms for Marketers CD 8.2 rev. 161129.zip в моем Website папка. После, я:

  1. На всех серверах CD, в \Website\App_Config\Include\Sitecore.Forms.Config файл, удалите или отключите следующие разделы. <hook type="Sitecore.Form.Core.WffmActionHook, Sitecore.Forms.Core"/>
  2. Удалил <event name="wffm:action:remote"> раздел также.
  3. я добавил <setting name="WFM.IsRemoteActions" value="true" /> а также <setting name="WFM.IsRemoteActions" value="true" />,

В моем connectionstrings.config, нет имени подключения для master, Мы решили удалить все ссылки на master в среде CD.

В файле showconfig я вижу <setting name="WFM.MasterDatabase" value="web" patch:source="Sitecore.Forms.config" />,

Я опубликовал весь сайт от CM до CD. Когда я смотрю на страницу в среде CD, я получаю следующее исключение:

Exception: System.InvalidOperationException
Message: Could not find configuration node: databases/database[@id='master']
Source: Sitecore.Kernel
   at Sitecore.Diagnostics.Assert.IsTrue(Boolean condition, String format, Object[] args)
   at Sitecore.Configuration.DefaultFactory.GetConfigNode(String xpath, Boolean assert)
   at Sitecore.Configuration.DefaultFactory.CreateObject(String configPath, String[] parameters, Boolean assert)
   at Sitecore.Configuration.DefaultFactory.GetDatabase(String name, Boolean assert)
   at Sitecore.Configuration.DefaultFactory.GetDatabase(String name)
   at Sitecore.Marketing.Definitions.Goals.Data.ItemDb.GoalDefinitionItemRepository..ctor(String databaseName, Boolean assumeActive, IDefinitionRecord
Mapper`1 mapper)
   at Sitecore.Marketing.Definitions.Goals.Data.ItemDb.GoalDefinitionItemRepository..ctor(String databaseName, Boolean assumeActive)

После этого поста я усек links таблицу в базе данных Core, и восстановите ее снова. Тем не менее, не повезло!

Что я делаю неправильно?

2 ответа

Решение

Обратившись туда-сюда с поддержкой Sitecore, они отметили, что эта проблема связана не с WFFM, а с определениями целей, которые не могут быть загружены.

Ответ от Sitecore

Проблема, связанная с тем, что в конфигурации SwitchMasterToWeb ссылка на основную базу данных на узле остается в узле, была зарегистрирована как ошибка в нашей системе отслеживания ошибок. Чтобы отслеживать будущий статус этого сообщения об ошибке, используйте номер ссылки 98770

Важный

Убедитесь, что следующие изменения сделаны ТОЛЬКО в среде CD.

открыто \App_Config\Include\Sitecore.Marketing.configи измените следующее: от <itemRepositoriesDatabase>master</itemRepositoriesDatabase> в <itemRepositoriesDatabase>web</itemRepositoriesDatabase>

Это приведет к Sitecore.ContentSearch.Exceptions.IndexNotFoundException исключение. Трассировка стека будет включать:

Exception: Sitecore.ContentSearch.Exceptions.IndexNotFoundException
Message: Index sitecore_marketingdefinitions_master was not found
Source: Sitecore.ContentSearch
   at Sitecore.ContentSearch.ContentSearchManager.GetIndex(String name)
   at Sitecore.Marketing.Search.BaseDefinitionSearchProvider`2..ctor(String indexName)

Согласно этой статье, sitecore_marketingdefinitions_master Индекс не должен присутствовать на CD. Чтобы исправить эту проблему, откройте \App_Config\Include\Sitecore.Marketing.Search.configи измените следующее: от <searchIndexName>sitecore_marketingdefinitions_master</searchIndexName> в <searchIndexName>sitecore_marketingdefinitions_web</searchIndexName>

Нажмите /admin/showconfig.aspx или используйте SIM-карту, чтобы создать XML-файл конфигурации, и найдите "master". Вы не должны иметь никаких. Где бы это ни было, проверьте источник патча и напишите патч для этого файла. Может быть, положить его в Switchtomaster.config.

Другие вопросы по тегам