2011-01-31 19 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」是未初始化的腳本變量,因此其值爲空。