尝试使用TDS进行部署时遇到以下错误.我不相信有任何自定义索引.我查看了以下链接并清除了我的\ Data\Indexes文件夹.
什么可能导致此错误?
这也是我收到错误的网址: http://<hostname>/sitecore
完整堆栈跟踪:
[InvalidOperationException: Root item is not defined]
Sitecore.Diagnostics.Assert.IsNotNull(Object value, String message) +59
Sitecore.Search.Crawlers.DatabaseCrawler.Initialize(Index index) +106
Sitecore.Search.Index.AddCrawler(ICrawler crawler) +36
[TargetInvocationException: Exception has been thrown by the target of an invocation.]
System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) +0
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) +1255
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +38
Sitecore.Reflection.ReflectionUtil.InvokeMethod(MethodInfo method, Object[] parameters, Object obj) +91
Sitecore.Configuration.Factory.AssignProperties(Object obj, Object[] properties) +760
Sitecore.Configuration.Factory.AssignProperties(XmlNode configNode, String[] parameters, Object obj, Boolean assert, Boolean deferred, IFactoryHelper helper) +943
Sitecore.Configuration.Factory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper) +305
Sitecore.Configuration.Factory.GetInnerObject(XmlNode paramNode, String[] parameters, Boolean assert) +858
Sitecore.Configuration.Factory.AssignProperties(XmlNode configNode, String[] parameters, Object obj, Boolean assert, Boolean deferred, IFactoryHelper helper) +795
Sitecore.Configuration.Factory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper) +305
Sitecore.Configuration.Factory.CreateObject(String configPath, String[] parameters, Boolean assert) +395
Sitecore.Search.SearchManager.get_SearchConfig() +71
Sitecore.Search.SearchManager.GetIndex(String id) +43
Sitecore.Shell.Applications.ShellForm.OnLoad(EventArgs e) +1331
[TargetInvocationException: Exception has been thrown by the target of an invocation.]
System.RuntimeMethodHandle._InvokeMethodFast(Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeTypeHandle typeOwner) +0
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) +1255
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +38
Sitecore.Reflection.ReflectionUtil.InvokeMethod(MethodInfo method, Object[] parameters, Object obj) +91
Sitecore.Web.UI.Sheer.ClientPage.OnLoad(EventArgs e) +332
System.Web.UI.Control.LoadRecursive() +66
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2428
Run Code Online (Sandbox Code Playgroud)
Wes*_*max 12
如果您浏览到此页面http:// [yourhostname] /sitecore/admin/showconfig.aspx
搜索索引元素的任何实例,并检查<Root>path here</Root>
内容树中实际存在的节点路径
请参阅示例的默认索引
<index id="system" type="Sitecore.Search.Index, Sitecore.Kernel">
<param desc="name">$(id)</param>
<param desc="folder">__system</param>
<Analyzer ref="search/analyzer"/>
<locations hint="list:AddCrawler">
<core type="Sitecore.Search.Crawlers.DatabaseCrawler,Sitecore.Kernel">
<Database>core</Database>
<Root>/sitecore/content</Root>
<include hint="list:IncludeTemplate">
<application>{EB06CEC0-5E2D-4DC4-875B-01ADCC577D13}</application>
</include>
<Tags>application</Tags>
<Boost>2.0</Boost>
</core>
<core-controlpanel type="Sitecore.Search.Crawlers.DatabaseCrawler,Sitecore.Kernel">
<Database>core</Database>
<Root>/sitecore/content/applications/control panel</Root>
<include hint="list:IncludeTemplate">
<taskoption>{BDB6FA46-2F76-4BDE-8138-52B56C2FC47E}</taskoption>
</include>
<Tags>taskoption</Tags>
<Boost>1.9</Boost>
</core-controlpanel>
<master type="Sitecore.Search.Crawlers.DatabaseCrawler,Sitecore.Kernel">
<Database>master</Database>
<Tags>master content</Tags>
</master>
</locations>
</index>
Run Code Online (Sandbox Code Playgroud)
一旦纠正了任何无效的Root值,该站点应该再次工作.
通常当出现此问题Sitecore的Lucene索引已经宣布,但<Root>
它指的是不是在数据库中.
注意:如果索引目标的数据库是web,则可能是因为您没有published
这些项目.
因为您无法访问Sitecore桌面,所以您必须注释掉导致该问题的索引.如果你不知道它是哪一个,你必须使用普通的旧试验和错误,因为sitecore不会告诉你.
要查看您在系统中声明的所有索引,请转到http://[yourhostname]/sitecore/admin/showconfig.aspx
并搜索<index
.这是App_Config中声明的所有配置的组合.
索引将如下所示:
<index id="MyIndexId" type="Sitecore.Search.Index, Sitecore.Kernel">
Run Code Online (Sandbox Code Playgroud)
一旦您发现罪魁祸首将其注释掉,然后在Sitecore中创建或部署缺少的根项目.完成后再添加索引.
归档时间: |
|
查看次数: |
6223 次 |
最近记录: |