I'm using a dataimporthandler

<requestHandler name="/update/html" startup="lazy" class="org.apache.solr.handler.dataimport.DataImportHandler">
    <lst name="defaults">
        <str name="config">html-config.xml</str>
    </lst>
</requestHandler>

I'm using the xsl attribute on all the entities, but this one is throwing an excpetion. This xsl is used in a production document conversion process with no problems.

      <entity name="quote"
          dataSource="myfilereader"
          processor="XPathEntityProcessor"
          url="${jcurrent.fileAbsolutePath}"
          stream="false"
          forEach="/TEI/text/body/p/quote[@ref]"
          xsl="xslt/quote.xsl"
          >

quote.xsl is a wrapper that calls into the real stuff which is in buildBookQuote.xsl

<xsl:include href="buildBookQuote.xsl" />

<xsl:template match="tei:quote[@ref]">
   <quote>.</quote>
            <xsl:call-template name="buildQuote">
                <xsl:with-param name="ref" select="@ref"/>
            </xsl:call-template>
        </xsl:template>   

the error is reported as

Caused by: javax.xml.transform.TransformerConfigurationException: solrres:/xslt/buildBookQuote.xsl: line 449: Required attribute 'test' is missing.

here is the code starting at line 449

<xsl:if test="number($item) lt count($verseNumArray)">
     <xsl:call-template name="verseRefFromSeq">
       <xsl:with-param name="book" select="$book"/>
       <xsl:with-param name="chaptNum" select="$chaptNum"/>
       <xsl:with-param name="verseNumArray" select="$verseNumArray"/>
       <xsl:with-param name="item" select="$item + 1"/>
     </xsl:call-template>
</xsl:if>

there actually is no "parameter" "test", though there is the xsl <if> code that uses test="..."

I have other xsl scripts I'm using on other entities that have <xslif...> calls with no problem?

any ideas?

Scott

--
Leave no stone unturned.
Euripides

Reply via email to