2014-09-04 90 views
2

set方法我在XSD有这样三种:JAXB不会创建列表

<xs:element name="Account" type="Account"/> 
<xs:element name="Operation" type="Operation"/> 
<xs:element name="Transaction" type="Transaction"/> 

<xs:complexType name="Operation"> 
     <xs:sequence> 
      <xs:element name="id" type="xs:long"/> 
      <xs:element name="type" type="EnumOperationType"/> 
      <xs:element name="balance" type="xs:double"/> 
     </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="Transaction"> 
     <xs:sequence> 
      <xs:element name="id" type="xs:long"/> 
      <xs:element name="type" type="EnumOperationType"/> 
      <xs:element name="amount" type="xs:double"/> 
      <xs:element name="isCredit" type="xs:boolean"/> 
      <xs:element name="isDebit" type="xs:boolean"/> 
     </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="Account"> 
     <xs:sequence> 
      <xs:element name="agencyNumber" type="xs:long"/> 
      <xs:element name="accountNumber" type="xs:long"/> 
      <xs:element name="owner" type="client:Client"/> 
      <xs:element name="balance" type="xs:double"/> 
      <xs:element maxOccurs="unbounded" ref="Operation"/> 
      <xs:element maxOccurs="unbounded" ref="Transaction"/> 
     </xs:sequence> 
    </xs:complexType> 

当我为他们生成使用JABX分别java对象,我只得到set()方法的前四个领域:年龄,帐户,所有者和平衡。

如何在复杂对象中设置列表?我需要以任何方式使用ObjectFactory吗?

最好的,佩德罗。

回答

5

您可以在addAll上执行add关于get方法返回的内容以设置List属性的内容。

+0

谢谢。我发现这进一步搜索:https://stackoverflow.com/questions/13913000/why-doesnt-jaxb-generate-setters-for-lists – 2014-09-04 22:46:16