С какими версиями вы работаете? Это полезно, если вы добавите больше деталей о вашей настройке.
Делая дикие предположения, вот что может вам помочь:
Элементы управления экспортируются как партнерские ссылки. Операции для этой партнерской ссылки получены из методов в контрольном файле JCX. Каждый параметр метода обрабатывается как отдельная часть входного сообщения; имя детали совпадает с именем параметра. Выходное сообщение определяется по типу возврата метода управления. Он имеет единственную часть, называемую параметрами, так как метод имеет единственный возвращаемый тип без имени.
http://download.oracle.com/docs/cd/E13214_01/wli/docs85/bpel/export.html#1061022
EDIT:
После небольшого исследования я понимаю, что вы находитесь на WLI 8.x. Ссылка выше должна помочь вам, если у вас возникли проблемы с экспортом JPD.
Альтернативный подход - импортировать ваш проект 8.x в проект 10g3 и экспортировать его оттуда. При таком подходе вы можете создавать BPEL2.0-совместимые рабочие процессы. Предупреждение: это однократный импорт, и проект не будет доступен через более ранние версии WLI. Итак, попробуйте на копию.
Вторая часть вашего вопроса не ясна. Вызов элементов управления из вашего кода Java будет аналогичен вызову веб-службы . WLI control
s, которые являются вызовами / преобразованиями EJB, преобразуются в веб-службу portType
s. Вы можете использовать эти веб-сервисы из вашего Java-приложения (например, используя Axis.)
Например: если я пытаюсь конвертировать JPD SomeWorkflow.jpd
и если мой JPD (WLI 8.x) имеет элемент управления
/**
* @common:control
*/
private com.appmills.someapp.controls.TestDBCtrl dbctrl;
Или, альтернативно, с 10g3
@Control()
private com.appmills.someapp.controls.TestDBCtrl dbctrl;
При экспорте создаются три файла SomeWorkflow.bpel
, SomeWorkflow.wsdl
и SomeWorkflow_ctrl.wsdl
Сгенерированный код будет:
<plnk:partnerLinkType name="com.appmills.someapp.controls.TestDBCtrl">
<plnk:role name="control">
<plnk:portType name="ctrl:com.appmills.someapp.controls.TestDBCtrlPT"
xmlns:ctrl="http://www.bea.com/workshop/bpel/ctrl"/>
</plnk:role>
</plnk:partnerLinkType>
РЕДАКТИРОВАТЬ 2:
Сгенерированный WSDL для элементов управления (в приведенном выше примере SomeWorkflow_ctrl.wsdl
) не содержит тегов <binding>
или <service>
. Это оставлено для вас, чтобы определить. Предполагается, что они где-то есть, и вам нужно просто подключить их.
Как вы, возможно, знаете, JCX-эквивалентами в Oracle-SOA являются JCA. Между WLI и Oracle-SOA нет прямого экспорта-импорта. Это означает, что может потребоваться различное количество усилий в зависимости от сложности вашего текущего кода и плана миграции.
На мой взгляд, конкретно для JDBC Control
s самое простое решение - переписать их как Database adapter
s.