Domanda

I built a website using Umbraco 4.9.0 and all is well locally. I published it and run it from IIS. But it now works, except that for XSLT file (Breadcrumb) referenced on the landing page it says "Error Parsing XSLT File {xslt file name}".

Error is: 'Error parsing XSLT file: \xslt\SiteBreadcrumb.xslt'

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE xsl:stylesheet [

   <!ENTITY nbsp "&#x00A0;"> ]> <xsl:stylesheet   version="1.0"
   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxml="urn:schemas-microsoft-com:xslt"
    xmlns:umbraco.library="urn:umbraco.library"
   xmlns:Exslt.ExsltCommon="urn:Exslt.ExsltCommon"
   xmlns:Exslt.ExsltDatesAndTimes="urn:Exslt.ExsltDatesAndTimes"
   xmlns:Exslt.ExsltMath="urn:Exslt.ExsltMath"
   xmlns:Exslt.ExsltRegularExpressions="urn:Exslt.ExsltRegularExpressions"
   xmlns:Exslt.ExsltStrings="urn:Exslt.ExsltStrings"
   xmlns:Exslt.ExsltSets="urn:Exslt.ExsltSets"
   xmlns:tagsLib="urn:tagsLib" xmlns:BlogLibrary="urn:BlogLibrary"
   xmlns:UCommentLibrary="urn:UCommentLibrary"
    exclude-result-prefixes="msxml umbraco.library Exslt.ExsltCommon
   Exslt.ExsltDatesAndTimes Exslt.ExsltMath Exslt.ExsltRegularExpressions
   Exslt.ExsltStrings Exslt.ExsltSets tagsLib BlogLibrary UCommentLibrary
   ">   <xsl:output method="xml" omit-xml-declaration="yes"/>
   <xsl:param name="currentPage" select="/.."/>   <xsl:variable name="minLevel"
   select="1"/>   <xsl:template match="/">
       <xsl:if test="$currentPage/@level &gt; $minLevel">
         <tr>
           <xsl:for-each select="$currentPage/ancestor::* [@level &gt; $minLevel and string

(umbracoNaviHide) != '1']">
             <td style=" height: 24px;">
               <a href="{umbraco.library:NiceUrl(@id)}?nodeId={@id}" style="color:black;">
                 <xsl:value-of select="@nodeName"/>
               </a>
               &gt;
             </td>
           </xsl:for-each>
         </tr>
       </xsl:if>   </xsl:template> </xsl:stylesheet>

Does anybody have any idea why all the XSLT files won't parse?

È stato utile?

Soluzione

The error is on this instruction:

   <xsl:if test="$currentPage/@level &gt; $minLevel">

Saxon 6.5.5 says:

Error at xsl:if on line 21 of file:/(Untitled): The value is not a node-set

One possible solution is to replace:

<xsl:param name="currentPage"/>

with:

<xsl:param name="currentPage" select="/.."/>

so that now the XSLT processor knows that $currentPage contains a node.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top