2015-06-26 83 views
0

我工作的一個BPEL流程,包括電子郵件服務,並且通常由AQ適配器拉開序幕。該組合從DVM查找和服務調用返回的內容中提取電子郵件地址。不一致行爲

我的代碼分配的電子郵件地址,看起來是這樣的:

concat(bpws:getVariableData('EmailVariable'),',',bpws:getVariableData('ServiceOutputVariable, 'ServiceVariablePart','Email') 

其中「EmailVariable,」在兩個逗號分隔的地址和「電子郵件」,是一個電子郵件地址

當BPEL是通過AQ適配器調用,電子郵件的「到」行將作爲EmailA,EmailBEmailC返回。

當我把它連接到用於調試的文件適配器,不過,在「到」行寫着「EMAILA,EMAILB,EmailC」(期望的結果,很明顯)。

從AQ適配器版本文件適配器版本唯一改變的是開球價值的源泉。

可能是什麼造成這種不一致的行爲?

+0

嗨。這是Bpel 2.0,11g嗎? – Wanderley

+0

這是BPEL 1.1,11g – Thorn

+0

嘿。你有沒有設法解決這個問題? – Wanderley

回答

0

顯而易見的問題是有你的Oracle SOA forum登載或搜索oracle.support,看它是否是一個錯誤? 無論如何,在AQ接口和BPEL之間放置一箇中介,讓中介通過數據轉換來解決問題,這是其首要目的和最佳實踐設計模式:將服務實現與服務接口隔離開來。

+0

我無法在SOA論壇或支持上發佈任何內容。不幸的是,我的任務是讓電子郵件服務工作,而不對其他組件的其他部分進行重大更改(這是由其他人設計的)。此時我有解決方案,但我仍然想知道*爲什麼*這發生了 – Thorn