Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/154.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JAXB解析XML字符串_Xml_Xml Parsing_Jaxb_Xsd_Xml Serialization - Fatal编程技术网

使用JAXB解析XML字符串

使用JAXB解析XML字符串,xml,xml-parsing,jaxb,xsd,xml-serialization,Xml,Xml Parsing,Jaxb,Xsd,Xml Serialization,我正在使用JAXB解析器将XML转换为Java对象。我已经从XMLschema(XSD)生成了JAXB文件 在传递XML字符串时,我定义了xsi:noNamespaceSchemaLocation='Typetest.xsd'。因此,这将根据XML模式Typetest.xsd验证XML文档 但我的问题是,我从未定义JAXB解析器获取模式文件的路径 那么JAXB将如何确定路径呢 <book xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc

我正在使用
JAXB
解析器将
XML
转换为Java对象。我已经从
XML
schema
(XSD)
生成了
JAXB
文件

在传递
XML
字符串时,我定义了
xsi:noNamespaceSchemaLocation='Typetest.xsd'
。因此,这将根据
XML
模式
Typetest.xsd
验证
XML
文档

但我的问题是,我从未定义
JAXB
解析器获取模式文件的路径

那么
JAXB
将如何确定路径呢

<book xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="TypeTest.xsd">
</book>

要在
解组器
操作上启用验证,必须在
解组器
上设置
架构
的实例

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


感谢您的回复。我对模式的验证没有问题。但我只是好奇解编程序究竟从哪里找到路径?在我的代码中,我只是将xml字符串传递给解组器。你能用一个例子帮助解释一下吗?@jegadees-the
unmarshaller
找不到路径。您需要创建一个
Schema
的实例,并自己在
Unmarshaller
上设置它。我已经在我的答案中添加了一个例子的链接。正是我想要的答案。谢谢