我知道如何在普通的 JAXB 绑定文件中启用扩展 - 在根元素中列出它们extensionBindingPrefixes
:
<jaxb:bindings
version="1.0"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
jaxb:extensionBindingPrefixes="xjc"
...>
但是,JAX-WS 绑定文件没有任何地方可以放置此属性。
<jaxws:bindings
version="2.0"
xmlns:jaxws="http://java.sun.com/xml/ns/jaxws"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
wsdlLocation="../wsdl/schema.wsdl"
...>
它不能进入根目录,也不能进入任何嵌套jaxb:bindings
元素。
你应该如何启用绑定扩展?
jaxws-maven-plugin:2.4.1 使用的示例命令行参数:
-keep
-s 'target/generated-sources/wsimport'
-d 'target/classes'
-encoding UTF-8
-extension
-Xnocompile
-B-XJsr303Annotations
-B-Xvalue-constructor
-B-Xinheritance
-b 'src/jaxws/bindings.xml'
'src/wsdl/schema.wsdl'