如何在soap服务中返回和数组?

时间:2014-11-06 14:53:54

标签: java xml spring soap

我希望返回和买家数组这是我的xsd文件,还有买家的定义 在xsd文件中:                                                                       

<xs:element name="getBuyerResponse">
    <xs:complexType>
        <xs:sequence>
            <xs:element name="buyer" type="tns:buyer" />
        </xs:sequence>
    </xs:complexType>
</xs:element>

<xs:element name="deleteBuyerRequest">
    <xs:complexType>
        <xs:sequence>
            <xs:element name="id" type="xs:int" />
        </xs:sequence>
    </xs:complexType>
</xs:element>

<xs:element name="deleteBuyerResponse">
    <xs:complexType>
        <xs:sequence>
            <xs:element name="response" type="xs:boolean" />
        </xs:sequence>
    </xs:complexType>
</xs:element>

<xs:complexType name="buyer">
    <xs:sequence>
        <xs:element name="id" type="xs:int" />
        <xs:element name="name" type="xs:string" />
        <xs:element name="lastname" type="xs:string" />
    </xs:sequence>
</xs:complexType>

我不知道如何为应用程序中的所有买家编写请求和响应。

我正在使用弹簧靴, java 7, 行家, posgress,

由于

1 个答案:

答案 0 :(得分:0)

您可以使用maxOccurs属性。例如,要在getBuyerResponse中返回任意数量的买方元素:

<xs:element name="getBuyerResponse">
   <xs:complexType>
      <xs:sequence>
         <xs:element name="buyer" type="tns:buyer" maxOccurs="unbounded"/>
      </xs:sequence>
   </xs:complexType>
</xs:element>

或者最多返回8个买方元素:

<xs:element name="getBuyerResponse">
   <xs:complexType>
      <xs:sequence>
         <xs:element name="buyer" type="tns:buyer" maxOccurs="8"/>
      </xs:sequence>
   </xs:complexType>
</xs:element>

请注意,如果您未指定,maxOccurs默认为1。