2016-01-11 43 views

回答

0

在XML聲明中的「編碼屬性是必填字段因此,

<?xml version="1.0"?> 

不是val ID。你可以做的是要的東西完全刪除聲明像

TransformerFactory tf = TransformerFactory.newInstance(); 
Transformer transformer = tf.newTransformer(); 
transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes"); 
StringWriter writer = new StringWriter(); 
transformer.transform(new DOMSource(doc), new StreamResult(writer)); 
+0

感謝您的回答阿爾克。想知道這是否可以做到。還有一件事,如果你能幫助我。我的客戶端系統解析器不接受,而是它要求 .... –

+0

這似乎不是解析器的限制,但更可能是架構問題。從你的陳述中,我得出結論認爲你驗證了XML並給了你一個錯誤,對吧?如果是這樣,這是因爲下層Schema定義了一個包含空內容的元素,就像:

+0

感謝您的幫助。 –

0

爲HTTP入站傳輸Oracle服務總線的默認編碼是ISO-8859-1和對於HTTP傳輸出境是UTF-8,我寧願除非有理由不使用它。

話雖如此,有一種方法可以配置不同的編碼。我假設您正在使用基於XML的代理並使用HTTP傳輸。在HTTP傳輸配置頁面上,您可以配置請求編碼和響應編碼。

進一步的細節可用in the OSB Documentation