开发者

XML Schema reference

开发者 https://www.devze.com 2023-01-20 20:09 出处:网络
I ha开发者_JAVA技巧ve two XML Schemas. First (A.xsd) is located in a library jar file (mylib.jar) and the second one (B.xsd) is in my project.

I ha开发者_JAVA技巧ve two XML Schemas. First (A.xsd) is located in a library jar file (mylib.jar) and the second one (B.xsd) is in my project.

I want to import A.xsd into the B.xsd and validate incoming XML via Jaxb2Marshaller embedded validator.

However I'm unable to make it work properly: it seems that inner XML validator of Jaxb2Marshaller does not understand references to files in jar-files (I just want to write something like <xs:import namespace="http://my/schema.xsd" schemaLocation="classpath:schema.xsd">).

How it could be fixed? How could library schema be referenced from a project schema?


Check out my answer to a previous question on how a ResourceResolver can be used to solve this problem:

  • JAXB SchemaFactory source order must follow import order between schemas?

Your implementation of LSResourceResolver will handle loading the schema from the classpath and converting it to the appropriate result.


You will need to configure your own resolver. Nothing in jaxb will use classpath:.

There is a JAXB sample which shows this sort of thing.


classpath: is not a valid url for schema location. You will have to use XML catalogs to load schemas from jars.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号