我的回归测试正在升级到8.0-U3升级到8.1-U2的Sitecore实例。其中一项测试是检查工作流是否按预期正常工作。Sitecore:'/'中的服务器错误应用程序:不允许使用空字符串。参数名称:handleId
因此,我在/sitecore/content/home
节点下创建了一个名为PAGE ABC的新样本项目(模板:/sitecore/templates/Sample/Sample Item
)。
页面ABC的工作流程为'示例工作流程'(模板:/sitecore/system/Workflows/Sample Workflow
),它是在新安装的Sitecore实例上提供的。
页ABC没有任何问题被创造了,但是当我提交PAGE ABC,我遇到了如下一个ArgumentException:
Server Error in '/' Application.
________________________________________
Empty strings are not allowed.
Parameter name: handleId
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.ArgumentException: Empty strings are not allowed.
Parameter name: handleId
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:
[ArgumentException: Empty strings are not allowed.
Parameter name: handleId]
Sitecore.Diagnostics.Assert.ArgumentNotNullOrEmpty(String argument, String argumentName) +204
Sitecore.Workflows.WorkflowUIHelper.ExtractFieldsFromFieldEditor(String handleId) +48
Sitecore.Shell.Framework.Commands.Workflow.Run(ClientPipelineArgs args) +900
[TargetInvocationException: Exception has been thrown by the target of an invocation.]
System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) +0
System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) +128
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +146
Sitecore.Reflection.ReflectionUtil.InvokeMethod(MethodInfo method, Object[] parameters, Object obj) +89
Sitecore.Nexus.Pipelines.NexusPipelineApi.Resume(PipelineArgs args, Pipeline pipeline) +313
Sitecore.Web.UI.Sheer.ClientPage.ResumePipeline() +224
Sitecore.Web.UI.Sheer.ClientPage.OnPreRender(EventArgs e) +825
Sitecore.Shell.Applications.ContentManager.ContentEditorPage.OnPreRender(EventArgs e) +24
System.Web.UI.Control.PreRenderRecursiveInternal() +197
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +7763
________________________________________
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.6.1073.0
注意:在这种情况下,所有需要的字段都填充。我也试过把一个(1)必填字段留空,但同样的问题仍然存在。
我搜索的关键字“handleId”整个网站的参数,我发现我的\ temp文件夹_UpgradeHistory这个部分,我怀疑有事情做上述问题Sitecore.Kernel.xml内
<member name="M:Sitecore.Workflows.WorkflowUIHelper.ExtractFieldsFromFieldEditor(System.String)">
<summary>
Extract the field values set by the field editor
</summary>
<param name="handleId">The Id of the handle holding the return values from the field editor</param>
<returns>A NameValueCollection containg the fields</returns>
</member>
我也尝试通过互联网搜索,但我没有找到任何相对的解决方案,我的问题。
编辑:我创建了一个Sitecore v.8.1-U2的新实例。将升级实例的ConnectionString.config中的主数据库替换为工作流提交操作,然后重新连接升级后的主数据库,然后再次遇到问题。
编辑:我其实也注意到工作流程的对话框有所不同。它与工作实例相比较小,这是一个更大的对话框。见支持下面的截图:
图1:不工作的工作流程
图2:工作流程
我将发布更详细的调查时,我有新的信息。感谢任何帮助。谢谢。
升级后我也面临同样的问题。在我的情况下,粘土平板电脑安装在我的sitecore中,当我提交CT3工作流程而未在评论框中添加评论时发生此错误。在我的情况下,这与自定义工作流相关。我的sitecore版本是8.1-U1。 –
@marvin,当您检查元素时,在Network选项卡中,CommentEditor.aspx查询字符串“hdl”是否具有值?例如'/CommentEditor.aspx?hdl = 8027C389F0DB4976909CB3981F9FDC7A' –
@HishaamNamooya,当我检查网络选项卡时,升级后的实例没有?hdl查询字符串。我也检查了新安装的8.1-U2实例,它已经存在。我还加倍检查了位于这里的物理文件:\ sitecore \ shell \ Applications \ Workbox和CommentEditor.aspx用于升级和新安装的实例是相同的。 –