I finally found the error, it was not because of this element, Xalan is just not good at telling you the problem.
I had an error before it, which didn't cause a "stop" to the rendering, but did cause any additional xsl:variable to go unprocessed, an in turn, not allow anything to reference them.
The debugging went like this:
- I made a mockup of my data, with the smallest data set I could
- I made a bock of the above code to run on its own
- It rendered ok
- I knew that the XSL was good, but something else was stopping it from working
- I started commenting the XML (original) until it worked
- I uncommented everything until it stopped working
- I zeroed down on this
XSL statement:
<xsl:variable name="HostURIRequestSuffix">
<xsl:if test="/Report/Scan/ScanDetails/SelectedHostReport = 'true'">
<xsl:call-template name="GetHostsURL"/>
</xsl:if>
</xsl:variable>
And this error:
file:/C:/temp/fop/fop-0.95/pdf-report.xml; Line #20; Column #48; org.xml.sax.SAXException: ElemTemplateElement error: GetHostsURL
javax.xml.transform.TransformerException: ElemTemplateElement error: GetHostsURL
For some reason, this causes any additional xsl:variable to get ignored, while the rest of the rendering works perfectly, once I fixed this, everything works, thanks guys for the help