XJC 绑定文件:基于命名空间而不是 schemaLocation 覆盖包
XJC binding file: override package based on namespace instead of schemaLocation
我想通过绑定 .xjb
文件覆盖我的模式的包。
完成于:
<schemaBindings>
<package name="com.schema.common" />
</schemaBindings>
JXC 编译器需要上述代码的上下文,通过 schemaLocation
.
定义
我将 .xsd
和 .xjb
文件存储在不同的目录中,这看起来很难看(就像所有 Java EE 一样):
<bindings schemaLocation="../../../../wsdl/common_v47_0/CommonReqRsp.xsd">
<schemaBindings>
<package name="com.schema.common" />
</schemaBindings>
</bindings>
是否可以在 schemaLocation
中定义没有相对路径的 bindings
上下文?
我看过SCD ("schema component designator")。看起来很有希望,但我找不到此语法的参考...
这是 SCD 的神奇之处:
<?xml version="1.0" encoding="UTF-8"?>
<bindings xmlns="http://java.sun.com/xml/ns/jaxb" version='2.1'
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://example/schema/common_v47_0">
<bindings scd="x-schema::tns">
<schemaBindings>
<package name="com.schema.common" />
</schemaBindings>
</bindings>
</bindings>
所有部分都很重要。 SCD 于 version='2.1'
.
中引入
我在 https://github.com/highsource/maven-jaxb2-plugin/wiki/Configure-Target-Packages-in-Binding-Files
找到了参考资料
SCD 是 JAXB 标准的扩展,可以在 JAXB RI 源代码树中研究实现:
我想通过绑定 .xjb
文件覆盖我的模式的包。
完成于:
<schemaBindings>
<package name="com.schema.common" />
</schemaBindings>
JXC 编译器需要上述代码的上下文,通过 schemaLocation
.
我将 .xsd
和 .xjb
文件存储在不同的目录中,这看起来很难看(就像所有 Java EE 一样):
<bindings schemaLocation="../../../../wsdl/common_v47_0/CommonReqRsp.xsd">
<schemaBindings>
<package name="com.schema.common" />
</schemaBindings>
</bindings>
是否可以在 schemaLocation
中定义没有相对路径的 bindings
上下文?
我看过SCD ("schema component designator")。看起来很有希望,但我找不到此语法的参考...
这是 SCD 的神奇之处:
<?xml version="1.0" encoding="UTF-8"?>
<bindings xmlns="http://java.sun.com/xml/ns/jaxb" version='2.1'
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://example/schema/common_v47_0">
<bindings scd="x-schema::tns">
<schemaBindings>
<package name="com.schema.common" />
</schemaBindings>
</bindings>
</bindings>
所有部分都很重要。 SCD 于 version='2.1'
.
我在 https://github.com/highsource/maven-jaxb2-plugin/wiki/Configure-Target-Packages-in-Binding-Files
找到了参考资料SCD 是 JAXB 标准的扩展,可以在 JAXB RI 源代码树中研究实现: