FpML自定义绑定jaxb

时间:2013-10-19 03:11:17

标签: java xml jaxb

我需要在我的项目中使用FpML并努力通过JAXB生成Java类:

[ERROR] Element "{http://www.fpml.org/FpML-5/confirmation}tradeId" shows up in more than one properties.
line 1142 of file:/D:/FpML/schema/fpml/5-5/confirmation/fpml-doc-5-5.xsd

将fpml-doc-5.5.xsd导入主模式。

我尝试使用内联自定义绑定(我放弃了使用外部文件),如下所示:

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns="http://www.fpml.org/FpML-5/confirmation" xmlns:fpml-annotation="http://www.fpml.org/annotation" targetNamespace="http://www.fpml.org/FpML-5/confirmation" ecore:documentRoot="FpML" ecore:nsPrefix="conf" ecore:package="org.fpml.confirmation" version="$Revision: 10163 $" elementFormDefault="qualified" attributeFormDefault="unqualified"
        xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" 
        xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc" 
        jaxb:version="1.0">
....


    <xsd:element name="issuer" type="IssuerId"></xsd:element>
      <xsd:element name="tradeId" type="TradeId">
        <xsd:annotation>
           <xsd:appinfo>
                    <jaxb:property name="tradeIdentifierId"/>
           </xsd:appinfo>
        </xsd:annotation>
      </xsd:element>

仍然会出现同样的错误。

直接编辑架构以重命名tradeId可以解决问题,但我不能这样做。我仍然可以定义自己的内联绑定。

你可以请一些亮点吗?

1 个答案:

答案 0 :(得分:0)

使用JAXB版本2.我正在使用jaxb-xjc 2.1.13而没有FPML 5.5确认的问题。