XSLT:: результат-документ - PullRequest
4 голосов
/ 22 марта 2012

У меня есть XSL, который генерирует файл XML

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> 
  <xsl:output method="html" indent="yes"/> 
  <xsl:template match="/"> 
    <xsl:variable name="filename" select="concat('TextTypes','.html')" />
    <xsl:result-document method="html" href="{$filename}">
      <font name="{$truncatedFont}" size="{$truncatedSize}" style="{@styleOverride}" env="{$env}" lang="{@language}" />
    </xsl:result-document>    
  </xsl:template> 
</xsl:stylesheet> 

Когда я запускаю XSLT, я получаю сообщение об ошибке:

ERROR:  'Unsupported XSL element 'http://www.w3.org/1999/XSL/Transform:result-document''
Error during transformation
javax.xml.transform.TransformerException: java.lang.RuntimeException: Unsupported XSL element 'http://www.w3.org/1999/XSL/Transform:result-document'

Я указал новую версию XSLT как 2.0. Я не понимаю, почему я получаю эту ошибку. Пожалуйста, помогите.

Ответы [ 3 ]

4 голосов
/ 22 марта 2012

XSLT 2.0 поддерживается только несколькими процессорами XSLT, я думаю, что с Java есть только Saxon 9 , а с веб-сферой IBM вы также можете использовать процессор IBM XSLT 2.0, но процессор XSLT в Oracle соответственно SUN JRE и JDK основаны на Apache Xalan и поддерживают только XSLT 1.0.

0 голосов
/ 22 марта 2012

Это зависит от того, как вы используете XSLT nishMaria.

Если вы можете использовать XSLT с последовательным подключением, то вы можете обработать входной документ несколько раз, чтобы создать несколько разных выходных файлов или создать один выходной файл со всеми желаемыми выходными данными, а затем пропустить этот файл через несколько XSLT, каждый из которых просто выбирает часть выход.

0 голосов
/ 22 марта 2012

Похоже, ваш процессор xslt не поддерживает версию 2.0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...