Java JAXB-EclipseLink MOXy-嵌套的复合对象未正确编组

Java JAXB-EclipseLink MOXy-嵌套的复合对象未正确编组,java,xml,jaxb,eclipselink,moxy,Java,Xml,Jaxb,Eclipselink,Moxy,映射java类是从下面的模式usign XJC工具生成的。 XML模式是: <xs:complexType name="configurations"> <xs:sequence> <xs:element name="configuration" maxOccurs="unbounded" minOccurs="0"> <xs:complexType> <xs:sequence&g

映射java类是从下面的模式usign XJC工具生成的。 XML模式是:

 <xs:complexType name="configurations">
     <xs:sequence>
     <xs:element name="configuration" maxOccurs="unbounded" minOccurs="0">
         <xs:complexType>
           <xs:sequence>
           <xs:element name="variation" maxOccurs="unbounded" minOccurs="0">
            <xs:complexType>                                
             <xs:attribute name="charValueName" type="LimitedString30" />             
             <xs:attribute name="charValueDesc" type="LimitedString40" />
             <xs:attribute type="xs:decimal" name="price" />        
             <xs:attribute type="xs:string" name="pricingUnit" />
            </xs:complexType>
           </xs:element>
         </xs:sequence>
         <xs:attribute type="xs:string" name="charName" />
       </xs:complexType>
 </xs:element>
 </xs:sequence>
 </xs:complexType>***

***
使用JAXB的封送XML是:

  <configurations>
  <configuration charName="XYZ">
   <variation>Configurations$Configuration$Variation@44d8783e</variation>
   <variation>Configurations$Configuration$Variation@5fbe51c1</variation>
 </configuration>
 </configurations>

配置$Configuration$Variation@44d8783e
配置$Configuration$Variation@5fbe51c1

如果查看上面的“variation”元素,它没有任何诸如“charValueName”、“charValueDesc”等编组的属性。知道为什么吗?JAXB对嵌套元素的深度有任何限制吗?

注意:我是专家组的负责人和成员

如果MOXy不知道正在封送的类,则此问题可能会在MOXy中发生。对象最终会根据其
toString()
方法进行编组。您确定您正在使用EclipseLink 2.3.1,我相信您遇到了EclipseLink 2.3.2中修复的以下错误:

截至今日(2013年8月26日),EclipseLink的当前版本为2.5.0,可从以下位置下载:


您使用的是哪种JAXB实现和版本?Blaise,我使用的是JAXB 2.0。JAXB 2.0是具体的操作版本(请参阅:)。有一些实现,比如RI()和eclipseelink MOXy()。您可以在
JAXBContext
上调用
getClass()
查找提供程序,确定版本取决于提供程序。对不起,我没有完全阅读您的问题。我们正在使用Moxy(javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory),这与Moxy没有自动拾取引用的类有关(您可以在自己创建
JAXBContext
时提供它)。我相信这个问题在EclipseLink 2.3.3中已经解决了。