那怎么可能是TransformerFactory.newInstance()。newTransformer(streamSource)返回null。根据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--
java.io.BufferedInputStream@32999f10
javax.xml.transform.stream.StreamSource@399ed64
org.apache.xalan.processor.TransformerFactoryImpl@6eb04214
null
答案 0 :(得分:3)
回答我自己的问题。如果XSLT文件无效,则会发生(newTransformer(Source)将返回null
)。我认为应该向Oracle报告,以便他们更改javadoc。 1}}返回时仍然是可能的。
答案 1 :(得分:0)
您的脚本包含拼写错误。最后一个语句打印“tf”而不是“tr”。 “tf”是未初始化的脚本变量,因此其值为null。