我知道有幾個問題的SAXParser那裏,但我不能找到一個描述我的問題:的SAXParser拋出FileNotFoundException異常,儘管沒有給出一個文件來分析
我有一個字符串包含XML數據,和我我將它傳遞給一個ByteArrayInputStream:
public boolean parse(String message) {
ByteArrayInputStream bis = new ByteArrayInputStream(message.getBytes());
我呼籲它
saxparser.parse(bis, handler); //this row throws a FileNotFoundException
解析方法儘管沒有提及任何文件,解析拋出一個FileNotFoundException
。 奇怪的是,它試圖在我的工作區中找到一個不存在的文件名,後來我發現文件名是由雙引號括起來的字符串的一部分(參見下面,我們將其稱爲「theFile.extension」文件)
編輯:我想,也許我的XML錯誤地因爲某些原因寫:
<?xml version="1.0"?>
<!DOCTYPE presence PUBLIC "Some-valid-stuff" "theFile.extension">
我應該從哪裏尋找在這種情況下的解決方案?
感謝
DOCTYPE x PUBLIC「...」「location」試圖在你的(本地)「位置」找到一個文件。顯然你沒有它。 – laune
SAX解析器試圖使用指定的文件來驗證xml。我現在不記得了,但有一種方法可以禁用驗證 –