Sitecore 8.0 Update-3 WebEdit Palette.aspx错误

时间:2016-04-29 10:59:23

标签: asp.net sitecore sitecore8

我今天一直在寻找这个问题的解决方案,但我仍然没有找到根本原因的运气。也许其他人遇到了相同的情况并且能够解决问题。提前谢谢。

好的,基本上我已经将我的一个客户端生产SC实例迁移到我的本地机器,以便从8.0-U3升级到8.1-U2,并且它在访问CM方面已经启动并运行(内容编辑器,体验编辑,发布和其他更多)和伐木的健康是相当不错的。

请注意:我还没有开始模拟,所以这仍然是在v.8.0-U3

直到我使用体验编辑器打开页面(仍然很好)并开始添加新组件(单击 add here 按钮),然后,我遇到了Palette.aspx 500内部服务器在浏览器控制台日志中检查后出现错误

POST http://8.0-u3.sitecore.com/sitecore/shell/Applications/WebEdit/Palette.aspx 500 (Internal Server Error)

因此,正如大多数好奇的开发人员所做的那样,我打开了URL以查看完整的堆栈跟踪:

Server Error in '/' Application.

Palette.aspx: unrecognized command ''

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Exception: Palette.aspx: unrecognized command ''

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace: 


[Exception: Palette.aspx: unrecognized command '']
   Sitecore.Shell.Applications.WebEdit.Palette.OnPreInit(EventArgs e) +2380
   System.Web.UI.Page.PerformPreInit() +46
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1251

我还查看了SC日志文件,看看它告诉我的内容:

16220 2016:04:29 17:37:12 ERROR Application error.
Exception: System.Web.HttpUnhandledException
Message: Exception of type 'System.Web.HttpUnhandledException' was thrown.
Source: System.Web
   at System.Web.UI.Page.HandleError(Exception e)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
   at System.Web.UI.Page.ProcessRequest()
   at System.Web.UI.Page.ProcessRequest(HttpContext context)
   at ASP.sitecore_shell_applications_webedit_palette_aspx.ProcessRequest(HttpContext context) in c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\bf95a62a\ceceb3fc\App_Web_mqggjnpz.2.cs:line 0
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

Nested Exception

Exception: System.FormatException
Message: Unrecognized Guid format.
Source: mscorlib
   at System.Guid.GuidResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument, String failureArgumentName, Exception innerException)
   at System.Guid.TryParseGuid(String g, GuidStyles flags, GuidResult& result)
   at System.Guid..ctor(String g)
   at Sitecore.Data.ShortID..ctor(String id)
   at Sitecore.Data.ShortID.Parse(String value)
   at Sitecore.Pipelines.ExecutePageEditorAction.ExecuteInsertRenderingArgs.<GetAllowedRenderingsIds>b__0(String id)
   at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   at Sitecore.Pipelines.ExecutePageEditorAction.InsertRendering.InsertRenderingAt(DeviceDefinition device, RenderingDefinition renderingDefinition, Int32 insertPosition, IEnumerable`1 allowedRenderingsIds)
   at Sitecore.Pipelines.ExecutePageEditorAction.InsertRendering.Process(PipelineArgs args)
   at (Object , Object[] )
   at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
   at Sitecore.Pipelines.ExecutePageEditorAction.ExecutePageEditorActionPipeline.Run(ExecutePageEditorActionArgs args)
   at Sitecore.Shell.Applications.WebEdit.Palette.OnPreInit(EventArgs e)
   at System.Web.UI.Page.PerformPreInit()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

所以我做了一些调查和调整,我从Sitecore.AntiCSRF.config中注释掉了WebEdit调色板,只是为了检查是否有任何差异(似乎不是正确的解决方案)

我的自我辩论:为什么我要编辑这个?

<ignore contains="WebEdit/Palette"/> 

以前的SC日志不再存在,但是下面有一个新的日志。

18404 2016:04:29 18:46:28 ERROR Application error.
Exception: Sitecore.Security.AntiCsrf.Exceptions.PotentialCsrfException
Message: CSRF form field is missing.
Source: Sitecore.Security.AntiCsrf
   at Sitecore.Security.AntiCsrf.SitecoreAntiCsrfModule.RaiseError(Exception ex, HttpContext context)
   at Sitecore.Security.AntiCsrf.SitecoreAntiCsrfModule.PreRequestHandlerExecute(Object sender, EventArgs e)
   at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

不幸的是,到目前为止,错误仍然存​​在,我仍然无法添加新组件,因为它返回发生错误弹出。

任何?

3 个答案:

答案 0 :(得分:3)

我最近在我的环境中遇到了同样的问题。在我的情况下,这是因为在某些占位符中添加组件会破坏html结构并导致此问题。

答案 1 :(得分:1)

在占位符设置上的“允许的渲染”中解析Guid时遇到问题。确保只选择了有效的渲染。您可能希望查看原始值以确保它是格式正确的以管道分隔的Guids列表。

答案 2 :(得分:1)

我们在布局页面上的default.cshtml中添加了一个类。 JS框架冲突