1

WFFM은 CM 환경에서 잘 작동합니다.Sitecore에서 CD 환경의 데이터베이스 노드 예외가 발생했습니다

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의 연결 이름이 없습니다. CD 환경에서 master에 대한 모든 참조를 제거하기로 결정했습니다.

showconfig 파일에서 <setting name="WFM.MasterDatabase" value="web" patch:source="Sitecore.Forms.config" />이 표시됩니다.

전체 사이트를 CM에서 CD로 게시했습니다. 나는 CD 환경에서 페이지를 볼 때, 나는 다음과 같은 예외 얻을 :이 post 다음

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) 

를, I는 코어 데이터베이스에 links 테이블을 절단하고 다시 재건. 아직도 운이 없다!

내가 뭘 잘못하고 있니?

답변

1

Sitecore 지원을 통해이 문제가 WFFM과 관련이 없지만로드 할 수없는 목표 정의와 관련이 있다고 언급했습니다.

SwitchMasterToWeb의 구성 노드에서 마스터 데이터베이스에 대한 참조를 떠난다 문제 Sitecore에서

응답은 우리의 버그 추적 시스템의 버그로 등록했다. 이 버그 리포트의 미래 상태를 추적하려면, 다음과 같은 변화가 CD 환경 (들)에 을 만들어 있는지 확인

98,770

중요 참조 번호를 사용하십시오.

\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) 

this article에 따르면, sitecore_marketingdefinitions_master 지수는 CD에 존재하지 않아야합니다. 이 문제를 해결하려면 \App_Config\Include\Sitecore.Marketing.Search.config을 열고 다음을 변경하십시오. <searchIndexName>sitecore_marketingdefinitions_master</searchIndexName>에서 <searchIndexName>sitecore_marketingdefinitions_web</searchIndexName>

0

/admin/showconfig.aspx를 누르거나 SIM을 사용하여 config xml을 만들고 "master"를 찾으십시오. 너는 어떤 것도 가져서는 안된다. 어디에서나 패치 소스를 확인하고 해당 파일에 대한 패치를 작성하십시오. 아마 Switchtomaster.config에 넣을 수 있습니다.

+0

sowconfig 파일에 'master'에 대한 참조가 0 개 있습니다. 또한,'SwitchToMaster'에있는 유일한 참조는 삭제 패치입니다. –