3
我有一塊這樣的代碼。我發現myResults = writer.getBuffer().toString();
會爲某些用例返回一個EMPTY STRING,但不會用於其他用例。什麼會導致javax.xml.transform.Transformer.transform()返回空字符串
我看着服務器,但在xml文件中沒有看到任何特殊字符。 會導致transformer.transform()
出錯,myResults = writer.getBuffer().toString();
會返回一個空字符串?它不返回null
,只是一個空字符串。
StringWriter writer = new StringWriter();
Result result = new StreamResult(writer);
try{
transformer.transform(new StreamSource(theInputStream), result);
}catch (Exception e) {
e.printStackTrace();
}
myResults = writer.getBuffer().toString();
非常感謝,
你確定源文件實際上可以轉換爲基於xslt的東西嗎? – nos
我認爲應該。我能夠翻譯爲某些用例返回的Feed,而不是其他用例。如何驗證源文檔是否有任何問題?謝謝。 – dojomedojo
嘗試捕獲TransformerException。您也可以驗證xml,但您需要一個xsd(模式定義)文件才能這樣做。 [Java XML驗證API](http://www.ibm.com/developerworks/xml/library/x-javaxmlvalidapi/index.html) – L4zl0w