我使用jaxb来解组xml文档。在分析XML时,它抛出了一个用XmlstreamException包装的MalformedUrlexception。我的理解是,在创建xmlstreamreader对象本身时,它抛出了异常。有什么建议吗?
我正在使用的代码段:
XMLInputFactory xif = XMLInputFactory.newFactory();
XMLResolver resolver = new XMLResolver(); //to capture systemID, base URI etc.
xif.setXMLResolver(resolver);
//Throws MalformedURLException while processing the below line
XMLStreamReader xsr = xif.createXMLStreamReader(new StreamSource(fileToProcess));
JAXBContext jaxbContext = JAXBContext.newInstance(MyPackage.MyClassName.class);
以下是异常跟踪:
class javax.xml.stream.XMLStreamException
javax.xml.stream.XMLStreamException: java.net.MalformedURLException: no protocol: [XML_FILEPATH/XML_FILE_NAME]
filetoprocess是一个包含绝对路径的字符串,如/home/project/input/myproject.xml
运行时JDK是1.7。我有没有丢失签名/协议?
谢谢,
巴斯卡尔
最佳答案
试试这个:
XMLStreamReader streamReader = factory.createXMLStreamReader(
new FileReader("data\\test.xml"));