2012-01-18 36 views
0

我在Open ESB BEPL進程中映射嵌套列表時遇到問題。 我正在調用一個返回包含列表的對象的服務。該列表中的一個參數是另一個列表。我的映射到的返回對象或多或少地複製了服務返回的對象的結構。 (即它有一個列表,其中一個參數是一個嵌套列表)Open ESB上的BPEL問題com.sun.xml.transform.sware.TooManyElementsException

我可以將參數從第一級列表映射到彼此,沒有問題。當我嘗試將嵌套列表中的參數映射到返回對象中的嵌套列表時,我得到一個com.sun.xml.transform.sware.TooManyElementsException。這似乎表明(從我能收集到的)我試圖將集合映射到單個變量。 (幾乎像BPEL不在迭代嵌套列表中)。這一切都是在相同的BPEL分配中完成的。

這是我的BPEL代碼:< assign name="mapGetQuotesOut" > <!-- this works --> <copy> <from>$getClientQuotesOut.parameters/ns0:GetClientQuotesResult/ns1:QuotePolicy/ns1:ProductID</from> <to>$viewCustomerOut.part1/return/quotes/produsctID</to> </copy> <!-- this works --> <copy> <from>$getClientQuotesOut.parameters/ns0:GetClientQuotesResult/ns1:QuotePolicy/ns1:LeadSourceCode</from> <to>$viewCustomerOut.part1/return/quotes/leadSourceCode</to> </copy> <!-- this causes the error --> <copy> <from>$getClientQuotesOut.parameters/ns0:GetClientQuotesResult/ns1:QuotePolicy/ns1:QuoteItems/ns1:QuoteItem/ns1:ItemDesc&lt<from> <to>$viewCustomerOut.part1/return/quotes/vehicleQuoteItems/itemDescription</to> </copy> <!-- this also causes the error --> <copy> <from>$getClientQuotesOut.parameters/ns0:GetClientQuotesResult/ns1:QuotePolicy/ns1:QuoteItems/ns1:QuoteItem/ns1:AgentCode</from> <to>$viewCustomerOut.part1/return/quotes/vehicleQuoteItems/agentCode<to> </copy> </assign>

任何意見或建議? Mike

回答

1

您需要使用for-each來執行XSL轉換。