Hi,
First of all I am excited by the Great work done at
xalan -j .
We have
a product which is built on servlet , xsl and legacy back -end technologies
to produce web pages. It produced very bad performance overall though it
works fine in all respects. Later detailed
analysis was done to understand the root cause for the performance bottle
neck.
It is found that
in the end-end request flow 65% of the time is consumed by XSLT interpretive
processor keeping the fact that xsl files are having huge processing
instructions.
At this stage I
have read about complied xslt processor ( XSLTC) and would like to prototype
some of the xsl files taking too much of time to transform it to
html.
Basic problem I have is that xalan:evaluate
function is used many times in xsl files to evaluate dynamic
stuff.
xmlns:xalan=http://xml.apache.org/xalan
exclude-result-prefixes="xalan"
<!-- usage
pattern 1 -->
<xsl:if
test="not($SelectedValuePath=$default)">
<xsl:value-of
select="xalan:evaluate($SelectedValuePath)"/>
</xsl:if>
<!-- usage
pattern 2 -->
<xsl:for-each
select="xalan:evaluate($OptionPath)">
<!-- usage
pattern 3 -->
<xsl:for-each
select="xalan:nodeset($OptionValuePairs)/options//*">
I have looked at
xsltc documentation, it is clearly mentioned that EXSLT dynamic extensions
like evaluate are not supported because of design limitations. I am under
impression that "nodeset" extension is compatible.
Please suggest me
if there is a work around to achieve xalan:evaluate gets thru in xsltc. How to
transform these xsl files to translet using xsltc.
without your help
, I am sure my work will be stopped completely. I have gathered all data about
xsltc and encourages our team to take up
this work. If
this problem can't be solved then all my efforts will go in
vein.
Please
suggest.
Thanks &
Regards,
Amar