0

I'm getting a peculiar error after adding a line to my XSLT used in my DVWP. I can't paste all my XSL here but let me explain like so:

  • I have an .xslt file with 284 lines
  • My DVWP references it through the XslLink property
  • The DVWP is added to a WebPart page
  • The page loads fine

So far so good...

  • I add one xsl:value-of line to my XSLT
    • It really doesn't matter what the line is
    • It can be <xsl:value-of select="@someField" />
    • It can be <xsl:value-of select="substring-after(@anotherField, '.')" />
  • The page will now show an error: 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.

Strange...

  • If I remove everything from the XSLT and leave just that one line then there is no
  • If I remove other lines (say 30 of the 284) and keep that one line then there is no error

So I'm 100% sure it has nothing to do with what line I'm adding or the XSLT.

I looked through the SharePoint logs for the correlation ID of the error I'm getting and compared with the logs of when I don't have the error.

I'm no expert at reading SP logs but there are only two main differences I see. The error log has these two entries:

Videntityinfo::isFreshToken reported failure.

and

Error while executing web part:
    System.BadImageFormatException:
        An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
            at <xsl:template match="Row">(XmlQueryRuntime , XPathNavigator )
            at <xsl:apply-templates>(XmlQueryRuntime , XPathNavigator )
            at <xsl:template name="nacho">(XmlQueryRuntime , XPathNavigator )
            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)

(It was actually split in two lines and not formatted so I cleaned it up for readability.)

According to what I've read online Videntityinfo is a permission error and System.BadImageFormatException is trying to use a x32 DLL in place of an x64 DLL.

What I cannot figure out is how it could be either of those issues if the page loads fine other times.

Or is there something else maybe wrong?

0

I was able to learn that the issue was it was taking too long to process the XSLT. Once I optimized the XSLT code the problem went away. I think there is a timeout setting somewhere that can be changed too.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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