You receive below error in SharePoint page containing DataForm web part with custom XSL applied, and also if your list contains large number of columns.
Unable to display this Web Part. To troubleshoot the problem, open this Web page in a Microsoft SharePoint Foundation-compatible HTML editor such as Microsoft SharePoint Designer. If the problem persists, contact your Web server administrator.
Correlation ID: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
Based on the Correlation ID, search the SharePoint ULS Logs to find more information and error related to this message.
Tip - Use the Merge-SPLogFile PowerShell command (SharePoint Management Shell - Run as Administrator) to get relative logs.
By digging into the logs, we get this useful error/exception - System.StackOverflowException
Error while executing web part: System.StackOverflowException: Operation caused a stack overflow. at Microsoft.Xslt.NativeMethod.CheckForSufficientStack() at (XmlQueryRuntime , XPathNavigator ) at (XmlQueryRuntime , IList`1 ) at (XmlQueryRuntime , XPathNavigator ) at (XmlQueryRuntime , XPathNavigator , IList`1 , IList`1 ) at Root(XmlQueryRuntime ) at System.Xml.Xsl.XmlILCommand.Execute(Object defaultDocument, XmlResolver dataSources, XsltArgumentList argumentList, XmlWriter writer, Boolean closeWriter) at System.Xml.Xsl.XmlILCommand.Execute(IXPathNavigable contextDocument, XmlResolver dataSources, XsltArgumentList argumentList, XmlWriter results) at System.Xml.Xsl.XslCompiledTransform.Transform(IXPathNavigable input, XsltArgumentList arguments, XmlWriter results) at Microsoft.SharePoint.WebPartPages.DataFormWebPart.ExecuteTransform(XslCompiledTransform xslCompiledTransform, XsltArgumentList xmlArguments, Boolean bDeferExecuteTransform) at Microsoft.SharePoint.WebPartPages.DataFormWebPart.PrepareAndPerformTransform(Boolean bDeferExecuteTransform)
Firstly, this is a known issue and a SharePoint 2010 limitation (KB 2639184 - https://support.microsoft.com/en-us/kb/2639184). Secondly, there is a Hotfix (Cumulative Update) to fix this.
This happens because the time allowed for doing the XSL transformation is exceeded and goes over 1 second (default SharePoint is 1 second).
If you create a page from SharePoint Designer which includes much of XSLT, the page will take more time to open. If the page takes more than than a second to open and load, you may come across this error.
You need to execute below PowerShell command in SharePoint FARM from your SharePoint Server to change and increase the XsltTransformTimeOut value (default is 1 second)
Open SharePoint 2010 Management Shell 'run as administrator'
$spFarm = Get-SPFarm $spFarm.XsltTransformTimeOut = [NEW INTEGER VALUE] $spFarm.Update() Example : $spFarm = Get-SPFarm $spFarm.XsltTransformTimeOut = 10 $spFarm.Update()
Code2care'smission is to share varied knowledge in technical and non-technical areas gathered during day-to-day learnings and development activities so that our visitors can leverage this portal to find solutions to their queries without re-inventing the wheel. Technical posts include Learnings, Tutorials, Video Tutorials, Code Snippets, Tips-n-tricks.