1

我的输入请求是:

   <body>
 <p:UpdateEntID xmlns:p="http://tempuri.org/">
  <!--1 or more occurrences-->
  <xs:OldID xmlns:xs="http://tempuri.org/">GenreID_002</xs:OldID>
  <xs:OldID xmlns:xs="http://tempuri.org/">GenreID_0021</xs:OldID>

  <!--Exactly 1 occurrence-->
  <xs:NewID xmlns:xs="http://tempuri.org/">GenreID_001</xs:NewID>
 </p:UpdateEntID>
</body>

如何将两个输入值(即 OldID)分配给 wsdl 的输入变量 EquivalentEntPLRequest?我的任务是:

<bpel:assign validate="no" name="AssignInputForUpdateID">
                                    <bpel:copy>
                                        <bpel:from>
                                            <bpel:literal>
                                                <ns0:UpdateEntID xmlns:ns0="http://tempuri.org/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><ns0:newid>ns0:newid</ns0:newid>
  <ns0:oldid>ns0:oldid</ns0:oldid>

                                                </ns0:UpdateEntID>
                                            </bpel:literal>
                                        </bpel:from>
                                        <bpel:to variable="EquivalentEntPLRequest" part="parameters"></bpel:to>
                                    </bpel:copy>
                                    <bpel:copy>
                                        <bpel:from part="parameters" variable="clientRequest6">
                                            <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:NewID]]></bpel:query>
                                        </bpel:from>
                                        <bpel:to part="parameters" variable="EquivalentEntPLRequest">
                                            <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0">
                                                <![CDATA[ns3:newid]]>
                                            </bpel:query>
                                        </bpel:to>
                                    </bpel:copy>

                                    <bpel:copy>
                                        <bpel:from part="parameters" variable="clientRequest6">
                                            <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[tns:OldID[1]]]></bpel:query>
                                        </bpel:from>
                                        <bpel:to part="parameters" variable="EquivalentEntPLRequest">
                                            <bpel:query queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[ns3:oldid[1]]]></bpel:query>
                                        </bpel:to>
                                </bpel:copy>
                            </bpel:assign>

通过上述分配,我能够将请求的单个值映射到响应的单个值。那么如何将 bpel 输入的多个输入映射到 wsdl 输入的多个输入?提前致谢

4

0 回答 0