我知道如何在普通的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'