我是 BPEL 和 Web 服务的新手。我有一个返回字符串数组的网络服务。在 BPEL 中,我调用此 Web 服务并在 Apache ODE 中部署该 Web 服务。我在 Eclipse 中使用 BPEL 设计器工具。
我从 BPEL 服务得到的结果是数组中的第一个元素,在控制台中我可以看到整个数组正在被传递。如何将输出设置为数组?我的输出变量的类型是字符串,我找不到诸如列表、数组或字符串列表之类的类型。
这个字符串列表:
<xs:element name="getAvailableBungalowsResponse">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
应该进入这个:
<complexType name="Bungalow">
<sequence maxOccurs="unbounded" minOccurs="0">
<element name="bungalowInfo" type="string"></element>
</sequence>
</complexType>
Bpel 从到到看起来像这样:
<bpel:copy>
<bpel:from part="parameters" variable="HolidayVillageServiceLinkResponse">
</bpel:from>
<bpel:to part="bungalows" variable="output">
</bpel:to>
</bpel:copy>
我在 BPEL 设计器中遇到的错误如下:
The from-spec of "<xs:complexType>" is not compatible with to-spec of "<complexType "Bungalow">" - Element <ns:return> in platform:/resource/HolidayVillage/bpelContent/HollidayVillage.wsdl differs from <tns:bungalowInfo> in platform:/resource/HolidayVillage/bpelContent/HolidayVillageReservationArtifacts.wsdl - different QNames: ns:return vs tns:bungalowInfo HolidayVillageReservation.bpel /HolidayVillage/bpelContent line 98 BPEL Validation Marker