У меня есть немного JSP, который делает это:
<c:import url="/xsl/Transformer.xsl" var="xslt" />
<x:transform doc="${actionBean.dom}" xslt="${xslt}" xsltSystemId="/xsl/">
Это преобразует XML в точности так, как ожидается, если Transformer.xsl не содержит тегов <xsl:include>
или если какие-либо документы, которые он включает, не содержат ничего.
Однако, если я использую XSL, который включает в себя документ, который, в свою очередь, включает в себя другой документ, я получаю следующую ошибку:
ERROR: 'Invalid URI 'NestedInclude.xsl
Could not resolve entity reference: "NestedInclude.xsl"'.'
Обратите внимание, что JSP содержится в каталоге под документами xsl. Если все мои XSL и JSP находятся в одном каталоге (и я удаляю атрибут xsltSystemId), тогда все будет работать нормально, но я не хочу этого делать.
Может кто-нибудь увидеть что-то, что я делаю не так, потому что на данный момент это немного убийственно, а документация JSTL практически бесполезна.