TransformerFactory.newInstance (). NewTransformer (streamSource) возвращает ноль - PullRequest
0 голосов
/ 31 января 2011

Как это может быть, что TransformerFactory.newInstance (). NewTransformer (streamSource) возвращает ноль.Согласно javadoc это невозможно: http://download.oracle.com/javase/6/docs/api/javax/xml/transform/TransformerFactory.html#newTransformer(javax.xml.transform.Source)

вот пример кода Groovy

    def is = new ClassPathResource('xslt/MySpace-Contact.xsl').inputStream
    println is
    def streamSource = new StreamSource(is)
    println streamSource
    def factory = TransformerFactory.newInstance()
    println factory
    def tr = factory.newTransformer(streamSource)
    println tr

Вот вывод:

--Output from testTransformation--<br> java.io.BufferedInputStream@32999f10<br> javax.xml.transform.stream.StreamSource@399ed64<br> org.apache.xalan.processor.TransformerFactoryImpl@6eb04214<br> null

Ответы [ 2 ]

3 голосов
/ 17 февраля 2011

Отвечая на мой собственный вопрос. Если файл XSLT недействителен, это произойдет (newTransformer (Source) вернет null). Я думаю, что об этом следует сообщить в Oracle, чтобы они изменили Javadoc. Это все еще возможно, что null возвращается.

0 голосов
/ 03 февраля 2011

Ваш скрипт содержит опечатку.Последнее утверждение печатает «tf», а не «tr».«tf» - неинициализированная переменная сценария, поэтому ее значение равно нулю.

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