使用SAX和Java我想解析XML字符串,但得到這個例外薩克斯當XML具有XSI分析異常:type屬性
[致命錯誤]:1:92:前綴 「XSI」 爲屬性「XSI :類型「與元素類型」設備「關聯未被綁定。
try {
SAXParserFactory factory = SAXParserFactory.newInstance();
factory.setNamespaceAware(false);
factory.setValidating(false);
SAXParser parser = factory.newSAXParser();
XMLReader xmlReader = parser.getXMLReader();
handler = new ConfigHandler();
xmlReader = XMLReaderFactory.createXMLReader();
// assign our handler
xmlReader.setContentHandler(handler);
// perform the synchronous parse
xmlReader.parse(new InputSource(new StringReader(xml)));
} catch (Exception e) {
e.printStackTrace();
}
這裏是XML
<device xsi:type="axl:XIPPhone" ctiid="182" uuid="{20a9f66a-fb1f-6981-5851-1474258054dc}">
<fullConfig>true</fullConfig>
<portalDefaultServer>serveraxd.lestry.com</portalDefaultServer>
<deviceProtocol>SOORTY</deviceProtocol>
..
..
</device>
我不能夠改變這種情況下的XML內容。
你的問題是什麼?如果您發佈了整個XML文檔(而不僅僅是一個片段),則該錯誤消息解釋了該問題。 「xsi」命名空間前綴未綁定到實際的命名空間URI。 – jarnbjo
我的問題是,我能做些什麼來防止這個異常,並允許我解析XML文件。 – mrmannione