2015-06-26 2 views
0

Я работаю над BPEL-процессом, который включает службу электронной почты и обычно запускается адаптером AQ. Компонент извлекает адреса электронной почты из поиска DVM и из содержимого, возвращаемого вызовом службы.Несогласованное поведение в SOA Composite/BPEL

Мой код, который назначает адреса электронной почты выглядит примерно так:

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

Где «EmailVariable,» это две разделенные запятой адреса и «Электронная почта» является один адрес электронной почты

Когда BPEL является вызванный через адаптер AQ, строка «to» электронной почты возвращается как EmailA, EmailBEmailC.

Когда я подключил его к файловому адаптеру для отладки, строка «to» читает «EmailA, EmailB, EmailC» (нужный результат, очевидно).

Единственное, что изменилось с версии адаптера AQ на версию File Adapter, является источником значения запуска.

Что может вызывать это непоследовательное поведение?

+0

Hi. Это Bpel 2.0, 11g? – Wanderley

+0

Это BPEL 1.1, 11g – Thorn

+0

Эй. Вам удалось решить эту проблему? – Wanderley

ответ

0

Очевидный первый вопрос: вы отправили это в Oracle SOA forum или искали oracle.support, чтобы узнать, является ли это ошибкой? В любом случае, поставьте посредник между интерфейсом AQ и BPEL и попросите посредника решить проблему с помощью преобразования данных, что является его целью в первую очередь и шаблоном проектирования лучшей практики: изолируйте реализацию своего сервиса от сервисного интерфейса.

+0

Я не смог ничего добавить ни на форуме SOA, ни в поддержке. К сожалению, мне было поручено сделать работу с электронной почтой без внесения существенных изменений в остальную часть составной части (которая была разработана кем-то еще. На данный момент у меня есть решение, но я все равно хотел бы знать * почему * это происходит – Thorn

Смежные вопросы