簡體   English   中英

Java DOM,名稱空間/版本問題

[英]Java DOM, namespace / version problem

我正在為RMI程序創建XML作為節點的過程中,但是遇到了一個問題。 我可以使用DOM創建XML,但是我很難在XML的頂部添加名稱空間和版本。 我嘗試使用setAttribute和setAttributeNS,但此刻我無法做其他事情了。

用於創建元素的Java代碼為:

DocumentBuilderFactory dbfac = DocumentBuilderFactory.newInstance();
            DocumentBuilder docBuilder = dbfac.newDocumentBuilder();
            Document doc = docBuilder.newDocument();

            Node root = doc.createElement("Request");
            doc.appendChild(root);

//code ommited

我目前得到的結果是:

<Request>
    <Identification>
        <UserID>user</UserID>
        <Password>pass</Password>
    </Identification>
</Request>

在請求部分,我需要它看起來像:

<Request xsi:noNamespaceSchemaLocation="URL" Version="1.0">

任何幫助將不勝感激,以幫助解決這個問題!

謝謝

我想您想要類似的東西:

...
Element root = doc.createElement("Request");
root.setAttributeNS("http://www.w3.org/2001/XMLSchema-instance", "xsi:noNamespaceSchemaLocation", "URL");
root.setAttribute("Version", "1.0");
doc.appendChild(root);
...

root定義為Element會為您提供.setAttribute *方法。

這會給你

<Request Version="1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="URL"/>

我知道其中包括更多內容,但是需要xmlns:xsi屬性,以便定義xsi命名空間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM