使用JAXB解析XML字符串
问题描述:
我正在使用JAXB
解析器将XML
转换为Java对象。我已经从XML
模式(XSD)
生成了JAXB
文件。使用JAXB解析XML字符串
在通过XML
字符串时,我定义了xsi:noNamespaceSchemaLocation='Typetest.xsd'
。因此,这将验证XML
文档与XML
模式Typetest.xsd
。
但我的问题是,我从来没有为JAXB
解析器定义抓取模式文件的路径。
那么JAXB
如何确定路径?
<book xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="TypeTest.xsd">
</book>
答
为了实现验证的unmarshal
操作,必须在Unmarshaller
设置的Schema
一个实例。
下面是一个例子的链接在我的博客:
感谢您的答复。我有对schema.But确认没有问题,我是在哪里只是好奇实际上解组人从中找到了路径?从我的代码中,我只是将xml字符串传递给unmarshaller。你能帮助解释一个例子吗? – jaggs 2014-09-26 10:25:56
@jegadees - “Unmarshaller”找不到路径。您需要创建一个'Schema'的实例并将其设置在'Unmarshaller'上。我在答案中添加了一个示例链接。 – 2014-09-26 12:08:26
正是我正在寻找的答案..谢谢 – jaggs 2014-09-29 01:59:08