针对 XSD Schema 的 Java XML 验证

编程入门 行业动态 更新时间:2024-10-28 20:20:23
本文介绍了针对 XSD Schema 的 Java XML 验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 private void validateXML(DOMSource source) throws Exception { URL schemaFile = new URL("www.csc.liv.ac.uk/~valli/modules.xsd"); SchemaFactory schemaFactory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_INSTANCE_NS_URI); Schema schema = schemaFactory.newSchema(schemaFile); Validator validator = schema.newValidator(); DOMResult result = new DOMResult(); try { validator.validate(source, result); System.out.println("is valid"); } catch (SAXException e) { System.out.println("not valid because " + e.getLocalizedMessage()); } }

但这会返回一个错误:线程main"java.lang.IllegalArgumentException 中的异常:没有实现由 /www.w3/2001/XMLSchema - 可以加载实例

But this returns an error saying: Exception in thread "main" java.lang.IllegalArgumentException: No SchemaFactory that implements the schema language specified by: www.w3/2001/XMLSchema -instance could be loaded

这是我的代码问题还是实际 xsd 文件的问题?

Is this a problem with my code or with the actual xsd file?

推荐答案

这个错误意味着你安装的Java没有任何可以解析XMLSchema文件的类,所以不是schema或者你的代码有问题.

That error means that your installed Java doesn't have any classes that can parse XMLSchema files, so it's not a problem with the schema or your code.

p>

我很确定最近的 JRE 默认有合适的类,所以你能给我们提供 java -version 的输出吗?

更新:

您使用了错误的 XMLContants 字符串.你想要:XMLConstants.W3C_XML_SCHEMA_NS_URI

You're using the wrong XMLContants string. You want: XMLConstants.W3C_XML_SCHEMA_NS_URI

更多推荐

针对 XSD Schema 的 Java XML 验证

本文发布于:2023-11-14 16:14:11,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1587922.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Schema   XSD   XML   Java

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!