Plugins xjc在绑定自定义中使用scd时出错

Plugins xjc在绑定自定义中使用scd时出错,plugins,maven,jaxb,Plugins,Maven,Jaxb,使用scd定制绑定时,无法识别非Sun jaxb插件 例如,这不起作用: <jaxb:bindings scd="/~fpml:TradeHeader"> <ext:interfaces> example.TradeHeaderDelegateInterface </ext:interfaces> </jaxb:bindings> 我的.xjb文件确实声明了“ext”前缀的名称空间,所以这不是问题所

使用scd定制绑定时,无法识别非Sun jaxb插件

例如,这不起作用:

<jaxb:bindings
    scd="/~fpml:TradeHeader">
    <ext:interfaces>
        example.TradeHeaderDelegateInterface
    </ext:interfaces>
</jaxb:bindings>    
我的.xjb文件确实声明了“ext”前缀的名称空间,所以这不是问题所在

有没有人使用过xjc插件(例如jaxb公共插件,如Copyable等),并让它使用基于scd的定制

我的xjc版本是:2.2.2,我使用maven-jaxb2-plugin(版本0.8.0)插件生成绑定

谢谢你的帮助


aravind

maven-jaxb22-plugin:jar:0.8.1:runtime,com.sun.xml.bind:jaxb impl:jar:2.2.5-b10:runtime,com.sun.xml.bind:jaxb-xjc:jar:2.2.5-b10:runtime]仍然存在这个问题

从xjc源代码(不久前)来看,这不是一个容易解决的问题,因为定制没有“导入”到目标xsd中,并且处理发生在匹配组件的上下文中

模式解析器就是这种情况,其中模式被“导入”到绑定上下文中,因此所有名称空间都是有效的


我已将所有自定义恢复为模式样式。我记得当试图在同一个绑定文件中同时执行wsdl和xsd时,这会带来痛苦的后果。

我也注意到了这个问题。令人恼火,因为基于SCD的方法显然更可取(也就是说,当它起作用时)。相关的:
<jaxb:bindings
    schemaLocation="../schemas/fpml-5-1/fpml-doc-5-1.xsd"
    node="/xsd:schema//xsd:complexType[@name='TradeHeader']">
    <ext:interfaces>
        example.TradeHeaderDelegateInterface
    </ext:interfaces>
</jaxb:bindings>
<jaxb:bindings 
    scd="/~fpml:CommodityMarketDisruption//fpml:marketDisruptionEvent">
    <jaxb:property name="marketDisruptionEvent"/>
</jaxb:bindings>
[ERROR] Error while parsing schema(s).Location [ file:/C:/projects/domain-fpml-5-1/src/main/resources/xjb/fpml-5-1.xjb{40,19}].
org.xml.sax.SAXParseException: cvc-elt.1: Cannot find the declaration of element 'ext:interfaces'.