使用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一个实例。

下面是一个例子的链接在我的博客:

+0

感谢您的答复。我有对schema.But确认没有问题,我是在哪里只是好奇实际上解组人从中找到了路径?从我的代码中,我只是将xml字符串传递给unmarshaller。你能帮助解释一个例子吗? – jaggs 2014-09-26 10:25:56

+0

@jegadees - “Unmarshaller”找不到路径。您需要创建一个'Schema'的实例并将其设置在'Unmarshaller'上。我在答案中添加了一个示例链接。 – 2014-09-26 12:08:26

+1

正是我正在寻找的答案..谢谢 – jaggs 2014-09-29 01:59:08