2011-01-31 16 views
0

这怎么可能是TransformerFactory.newInstance()。newTransformer(streamSource)返回null。根据javadoc中这是不可能的: http://download.oracle.com/javase/6/docs/api/javax/xml/transform/TransformerFactory.html#newTransformer(javax.xml.transform.Source)TransformerFactory.newInstance()。newTransformer(streamSource)返回null

这里的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--
[email protected]
[email protected]
[email protected]
null

+1

您正在打印`factory` 2次 – tenshi 2011-01-31 14:46:16

+1

我不知道您在这里问了什么,我怀疑其他人也不知道。请试着将你的问题制定成一个问题 – 2011-01-31 15:51:05

回答

2

回答我自己的问题。如果XSLT文件无效,则会发生(newTransformer(Source)将返回null)。我认为应该向Oracle报告,以便他们更改javadoc。返回null仍然可能。

0

你的脚本中包含了错字。最后一条语句显示“tf”而不是“tr”。 “tf”是未初始化的脚本变量,因此其值为空。