我正在为营销人员使用网络表单。它在我的本地和Dev Server中工作正常但在CMS环境中我遇到了以下问题: -
[InvalidOperationException: folder]
Sitecore.Form.Core.Configuration.ThemesManager.GetThemeName(Item form, ID fieldID) +434
Sitecore.Form.Core.Configuration.ThemesManager.GetThemeUrl(Item form, Boolean deviceDependant) +250
Sitecore.Form.Core.Configuration.ThemesManager.ScriptsTags(Item form, Item contextItem) +49
Sitecore.Form.Core.Configuration.ThemesManager.RegisterCssScript(Page page, Item form, Item contextItem) +184
Sitecore.Form.Web.UI.Controls.SitecoreSimpleFormAscx.OnInit(EventArgs e) +233
System.Web.UI.Control.InitRecursive(Control namingContainer) +186
System.Web.UI.Control.AddedControl(Control control, Int32 index) +189
Sitecore.Form.Core.Renderings.FormRender.OnInit(EventArgs e) +846
System.Web.UI.Control.InitRecursive(Control namingContainer) +186
System.Web.UI.Control.AddedControl(Control control, Int32 index) +189
Efocus.Sitecore.Renderers.SitecoreForm.AddedControl(Control control, Int32 index) +75
Efocus.Sitecore.Renderers.SitecorePlaceholder.OnInit(EventArgs e) +554
System.Web.UI.Control.InitRecursive(Control namingContainer) +186
System.Web.UI.Control.InitRecursive(Control namingContainer) +291
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2098
答案 0 :(得分:5)
这个响应有点晚了,但我今天在CM环境中看到了同样的问题。我希望发布这个可以在将来节省一些时间。
如果查看堆栈跟踪,则抛出异常
Sitecore.Form.Core.Configuration.ThemesManager.GetThemeName(Item form, ID fieldID)
此方法查看在网站定义中配置为表单根ID的表单ID。
string formsRootForSite = SiteUtils.GetFormsRootForSite(Context.Site);
Item item = form;
if (form.TemplateID != IDs.FormFolderTemplateID)
{
item = form.Database.GetItem(formsRootForSite);
}
Assert.IsNotNull(item, "folder");
在我的情况下,配置的ID与Sitecore中的实际商品ID不匹配。
答案 1 :(得分:0)
根据堆栈跟踪,您似乎已为您的网站配置了CMS环境中不可用的主题。
如果您有缩放实例,请确保所有节点都安装了WFFM,甚至是内容交付服务器。有关Content Delivery Server安装的说明,请参阅WFFM管理员的文档。
如果它不是缩放实例,您可能在系统中缺少您指定的主题的文件夹。