Это разные версии моей рабочей среды:
Jdeveloper v 11.1.1.6.0
BPEL 2.0
Сервер Oracle SOA
У меня проблема при получении списка элементов на шаге преобразования BPEL.Это преобразование получает данные из полученного элемента SOAP (из входных данных предыдущего шага), и его цель состоит в том, чтобы сгенерировать новый элемент SOAP, используя его в качестве входных данных следующего шага, который связывается с другим веб-сервисом.
Это структура элемента SOAP, который принимается в преобразование:
<NameOfRequest version="1.0" lang="es">
<idConv>133</idConv>
<gTram>
<ns2:tipo>TIPO1</ns2:tipo>
<ns2:anyo>2018</ns2:anyo>
<ns2:numero>1</ns2:numero>
</gTram>
<ns8:solicitud>
<ns3:idSolicitud>2</ns3:idSolicitud>
</ns8:solicitud>
<ns8:solicitud>
<ns3:idSolicitud>1</ns3:idSolicitud>
</ns8:solicitud>
</NameOfRequest>
Кроме того, следующая структура XSD следует за Запросом:
<xsd:complexType name="ComunicarAltaBdnsBySolicitudesRequestType_v1.0">
<xsd:complexContent>
<xsd:extension base="cm:RequestMessageBaseType_v1.0">
<xsd:sequence>
<xsd:element name="idConv" type="xsd:long" nillable="false"/>
<xsd:element name="gTram" type="cgt:CodigoGrupoTramitacionType_v1.0" nillable="false" minOccurs="1"/>
<xsd:element name="solicitud" type="cso:CodigoSolicitudType_v1.0" minOccurs="1" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="CodigoSolicitudType_v1.0">
<xsd:sequence>
<xsd:element name="idSolicitud" minOccurs="1" type="xsd:long"/>
</xsd:sequence>
</xsd:complexType>
Мне нужно скопировать все элементы, называемые solicitud , в другую структуру SOAP (для нового запроса после текущего преобразования).
Я пробовал разные процедуры на этапе преобразования (для каждого, copy, copyList, append и т. д.), но я не могу скопировать все повторения solicitud элементов.Я попытался даже скопировать содержимое в новую переменную, а затем присвоить эту переменную целевому списку.
Самый положительный результат, которого я достиг, - это скопировать только один из элементов solicitud в новыйSOAP-вызов ... но для моей цели этого недостаточно.
Есть идеи, как скопировать все элементы?
Заранее спасибо!