1

我知道为什么会收到此消息,因为服务器给出了错误并且没有返回 XML,而只是返回了错误消息。有没有办法检查它是否是有效的 XML,所以我没有收到这条消息。

我将 XML 传递给这个方法:

public Document getDomElement(String xml){
        Document doc = null;
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        try {

            DocumentBuilder db = dbf.newDocumentBuilder();

            InputSource is = new InputSource();
                is.setCharacterStream(new StringReader(xml));
                doc = db.parse(is); 

            } catch (ParserConfigurationException e) {
                Log.e("Error: ", e.getMessage());
                return null;
            } catch (SAXException e) {
                Log.e("Error: ", e.getMessage());
                return null;
            } catch (IOException e) {
                Log.e("Error: ", e.getMessage());
                return null;
            }
                // return DOM
            return doc;
    }

谢谢

4

1 回答 1

1

错误非常简单,您的 XML 看起来像(示例):

<root-element>
    ...
</root-element>
<root-element>
    ...
</root-element>
...
<root-element>
    ...
</root-element>

而 XML 只允许一个根元素,因此您需要为所有“基本”元素创建一个“包装器”元素,以便解析器工作。

于 2013-09-16T17:22:19.280 回答