当前位置: 首页 > 面试题库 >

可以使用JAXB 2.0验证编组的XML吗?

岳浩
2023-03-14
问题内容

显然在JAXB的版本2中-验证器类已被弃用-
这是否意味着编组器会自动验证您的XML?如果是这样,它似乎并没有抱怨我正在形成一些不正确的XML!谁能给我一些有关如何验证编组XML以确保其符合XSD架构的建议。

非常感谢。


问题答案:

通过使用JAXP 1.3 Schema Validation Framework,在JAXB 2.0中扩展了验证功能。

在哪里之前:

unmarshaller.setValidating(true);

现在您需要执行以下操作:

SchemaFactory sf = SchemaFactory.newInstance(
    javax.xml.XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = sf.newSchema(new File("myschema.xsd"));
unmarshaller.setSchema(schema);

如果将null传递给setSchema,则会禁用验证。

请检查此参考。



 类似资料:
  • 我在使用Woodstox和Stax2的XSD模式进行XML验证时遇到了一个问题。即使XML数据符合架构,验证也会失败。 令人惊讶的是,验证问题只发生在写入XML时(使用XMLStreamReader2),而不是读取XML时(使用XMLStreamReader2)。 我构建了一个小示例来再现和隔离错误。基本上,它只是将XML从文件读取到XMLStreamReader2中(使用XSD模式进行验证),然

  • 用UTF-8编码的XML模式是否可以验证一些用ISO-8859-2编码的XML或者编码必须相同? 架构:

  • 主要内容:形式良好的 XML 文档,验证 XML 文档,XML DTD,XML Schema,一个通用的 XML 验证器拥有正确语法的 XML 被称为"形式良好"的 XML。 通过 DTD 验证的XML是"合法"的 XML。 形式良好的 XML 文档 "形式良好"的 XML 文档拥有正确的语法。 在前面的章节描述的语法规则: XML 文档必须有一个根元素 XML元素都必须有一个关闭标签 XML 标签对大小写敏感 XML 元素必须被正确的嵌套 XML 属性值必须加引号 <?xml version=

  • 现在,我正在用Spring MVC开发一个web应用程序。 样品值可以是“0.05”、“1.00”、“12.55”等。 因此,如果有任何办法来解决这个问题,请点亮我。谢了。

  • 我正在使用Delphi10.2更新3。我按照这些说明验证生成的xml文档。 属性noNamespaceSchema位置对XML解析有什么影响? 使用Windows DOM和TXMLDocument验证XML:在某些计算机上不起作用 delphi中msxml的模式验证 但我有一个错误。“DTD/架构中未定义元素‘jegyzek\u adatok’上的属性‘noNamespaceSchemaLocat

  • 谁能解释一下如何使用notepad++根据XSD验证xml文件。“XML Tools”插件下拉列表中没有提供指定XSD文件的选项。在plugins子目录中正确安装XML插件,并将3个DLL复制到notepad++EXE子目录。其他XML“验证”特性也可以工作,但无法针对XSD进行验证。