2

We recently upgrade to Sitecore 9.0 Update-1 from Sitecore 8.2 update 2. When accessing one of the pages in Experience Editor, we get the following error for one of the renderings used for page banner:

10524 11:48:06 WARN Could not find type in ReflectionUtil.CreateObject: Sitecore.Web.UI.XslControls.ContentDot 10524 11:48:06 WARN Could not instantiate xsl control object (tag: 'sc:dot', assembly: 'Sitecore.Kernel', type: 'Sitecore.Web.UI.XslControls.ContentDot') ManagedPoolThread #1 11:48:07 INFO Job started: Sitecore.ListManagement.Operations.UpdateListOperationsAgent ManagedPoolThread #1 11:48:07 INFO Job ended: Sitecore.ListManagement.Operations.UpdateListOperationsAgent (units processed: ) 10524 11:48:07 ERROR Failed to render rendering Exception: System.Xml.XmlException Message: The ' ' character, hexadecimal value 0x20, cannot be included in a name. Source: System.Xml at System.Xml.XmlConvert.VerifyNCName(String name, ExceptionType exceptionType) at System.Xml.XmlQualifiedName.Verify() at System.Xml.Xsl.XsltArgumentList.AddParam(String name, String namespaceUri, Object parameter) at Sitecore.Mvc.Presentation.XsltRenderer.AddParameters(XsltArgumentList arguments) at Sitecore.Mvc.Presentation.XsltRenderer.GetArguments() at Sitecore.Mvc.Presentation.XsltRenderer.Render(TextWriter writer) at Sitecore.Mvc.Pipelines.Response.RenderRendering.ExecuteRenderer.Render(Renderer renderer, TextWriter writer, RenderRenderingArgs args)

This rendering has personalization rules applied to it, but other renderings (with/without personalization) seems to work just fine.

Edit: Using personalisation, by default the rendering content is hidden, and is shown only when a rule is true. Looking in the experience editor the issue comes when the default (hide) rule is shown. Selecting the other rule, the rendering works just fine.

  • Is this an XSLT rendering? – George Chang Feb 21 '18 at 2:52
  • My understanding of this so far is that, when by default you try to hide a rendering using personalization, Sitecore places a hidden rendering in place of the current rendering. This issue comes when this rendering is getting rendered. One of the parameters being passed to it contains an invalid value, and that is where it fails. – Surbhi Kochhar Feb 21 '18 at 5:51
  • @GeorgeChang, to answer your question, the rendering for which I get the error is a view rendering. It is the replacing hidden rendering which I believe is XSLT based. – Surbhi Kochhar Feb 21 '18 at 9:23
2

Your issue may be in your Sitecore.config file. The sc:dot XSL rendering was deprecated in 8.2 but still had some references in the Sitecore.config file, specifically in the sitecore/xslExtensions and sitecore/xslControls nodes.

Sitecore 8.2

<xslExtensions>
    <extension mode="on" type="Sitecore.Xml.Xsl.XslHelper, Sitecore.Kernel" namespace="http://www.sitecore.net/sc" singleInstance="true" />
    <extension mode="on" type="Sitecore.MainUtil, Sitecore.Kernel" namespace="http://www.sitecore.net/util" singleInstance="true" />
    <extension mode="on" type="Sitecore.DateUtil, Sitecore.Kernel" namespace="http://www.sitecore.net/dateutil" singleInstance="true" />
    <extension mode="on" type="Sitecore.Web.UI.WebControls.ContentDot, Sitecore.Kernel" namespace="http://www.sitecore.net/dot" singleInstance="true" />
    <extension mode="on" type="Sitecore.Xml.Xsl.SqlHelper, Sitecore.Kernel" namespace="http://www.sitecore.net/sql" singleInstance="true" />
    <extension mode="on" type="Sitecore.StringUtil, Sitecore.Kernel" namespace="http://www.sitecore.net/stringutil" singleInstance="true" />
</xslExtensions>
<xslControls>
    <control mode="on" tag="sc:date" type="Sitecore.Web.UI.XslControls.Date" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:dot" type="Sitecore.Web.UI.XslControls.ContentDot" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:html" type="Sitecore.Web.UI.XslControls.Html" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:image" type="Sitecore.Web.UI.XslControls.Image" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:link" type="Sitecore.Web.UI.XslControls.Link" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:memo" type="Sitecore.Web.UI.XslControls.Memo" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:sec" type="Sitecore.Web.UI.XslControls.Security" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:text" type="Sitecore.Web.UI.XslControls.Text" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:wordstyle" type="Sitecore.Web.UI.XslControls.WordStyle" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:enableSecurity" type="Sitecore.Web.UI.XslControls.EnableSecurity" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:disableSecurity" type="Sitecore.Web.UI.XslControls.DisableSecurity" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:editFrame" type="Sitecore.Web.UI.XslControls.EditFrame" assembly="Sitecore.Kernel" />
</xslControls>

Sitecore 9.0.1

<xslExtensions>
    <extension mode="on" type="Sitecore.Xml.Xsl.XslHelper, Sitecore.Kernel" namespace="http://www.sitecore.net/sc" singleInstance="true" />
    <extension mode="on" type="Sitecore.MainUtil, Sitecore.Kernel" namespace="http://www.sitecore.net/util" singleInstance="true" />
    <extension mode="on" type="Sitecore.DateUtil, Sitecore.Kernel" namespace="http://www.sitecore.net/dateutil" singleInstance="true" />
    <extension mode="on" type="Sitecore.Xml.Xsl.SqlHelper, Sitecore.Kernel" namespace="http://www.sitecore.net/sql" singleInstance="true" />
    <extension mode="on" type="Sitecore.StringUtil, Sitecore.Kernel" namespace="http://www.sitecore.net/stringutil" singleInstance="true" />
</xslExtensions>
<xslControls>
    <control mode="on" tag="sc:date" type="Sitecore.Web.UI.XslControls.Date" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:dot" type="Sitecore.Web.UI.XslControls.ContentDot" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:html" type="Sitecore.Web.UI.XslControls.Html" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:image" type="Sitecore.Web.UI.XslControls.Image" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:link" type="Sitecore.Web.UI.XslControls.Link" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:memo" type="Sitecore.Web.UI.XslControls.Memo" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:sec" type="Sitecore.Web.UI.XslControls.Security" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:text" type="Sitecore.Web.UI.XslControls.Text" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:wordstyle" type="Sitecore.Web.UI.XslControls.WordStyle" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:enableSecurity" type="Sitecore.Web.UI.XslControls.EnableSecurity" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:disableSecurity" type="Sitecore.Web.UI.XslControls.DisableSecurity" assembly="Sitecore.Kernel" />
    <control mode="on" tag="sc:editFrame" type="Sitecore.Web.UI.XslControls.EditFrame" assembly="Sitecore.Kernel" />
</xslControls>

You'll notice that the Sitecore 9 xslExtensions configuration node has had the Sitecore.Web.UI.WebControls.ContentDot reference removed. This is because that class has been removed entirely from Sitecore.Kernel.dll where as it was only marked as deprecated in 8.2.

The first 2 warnings in your log snippet...

10524 11:48:06 WARN Could not find type in ReflectionUtil.CreateObject: Sitecore.Web.UI.XslControls.ContentDot`
10524 11:48:06 WARN Could not instantiate xsl control object (tag: 'sc:dot', assembly: 'Sitecore.Kernel', type: 'Sitecore.Web.UI.XslControls.ContentDot')

...actually shows up in a fresh install of 9.0.1! This is likely due to this line in sitecore/xslControls:

<control mode="on" tag="sc:dot" type="Sitecore.Web.UI.XslControls.ContentDot" assembly="Sitecore.Kernel" />

I'm guessing that if you want to get rid of that warning, you can remove this line as well since Sitecore.Web.UI.XslControls.ContentDot no longer exists.

I would double check to make sure that during your upgrade you have removed the line from sitecore/xslExtensions in your Sitecore.config file. It's also probably safe to remove the one in sitecore/xslControls as well.

  • Thank you for sharing the details. I tried removing the control from the config. The warnings are gone now, but the error is still there. – Surbhi Kochhar Feb 23 '18 at 6:28
  • I am also getting same error. Could you please provide resolution for this? – user8927358 2 days ago

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.