#oracle #bpel
#Oracle #bpel
Вопрос:
Я создаю процесс BPEL, в котором мое требование заключается в том, что мне нужно создать задачу на основе некоторых входных данных и назначить ее частичному пользователю, а затем выйти из этого потока.
ранее у меня было впечатление, что я буду использовать человеческую активность задачи. но когда я использую, эта задача будет создана в самом процессе, и экземпляр будет заблокирован там до вмешательства человека (процесс BPEL ожидает результата.).
есть ли какой-либо способ, которым я могу использовать Java embed activity и создать задачу из кода Java, «я знаю, как назначить задание конкретному пользователю». пожалуйста, скажите мне. Абхишек
Комментарии:
1. Теперь я могу инициировать задачу, но не могу создать полезную нагрузку для этой задачи, если у кого-нибудь есть какие-либо идеи, пожалуйста, поделитесь
2. Человеческие задачи не являются частью спецификации BPEL. Пожалуйста, сообщите нам, какой продукт вы используете, иначе невозможно дать ответ (на вопрос, касающийся конкретного продукта).
Ответ №1:
Вы также можете открыть поток задач для пользователей, щелкнув знак . Это обычная область, просто с другим значком. Там вы должны увидеть Invoke
и Receive
. Просто отбросьте Receive, чтобы игнорировать его, если это то, что вы хотите.
Ответ №2:
Прочитайте и перейдите по этой ссылке http://docs.oracle.com/cd/E12483_01/integrate.1013/b28987/phase10.htm. По сути, все, что вам нужно сделать, это создать пользовательскую задачу в вашем составном файле, а затем связать ее с вашим процессом BPEL. Как только вы закончите, удалите значок задачи для персонала в потоке. Также не удаляйте receive, как говорит ZeissS, а продолжайте обрабатывать в параллельном потоке, поскольку тогда вы не получите исключение и не выполните откат, когда человеческая задача завершится.
Если вы действительно хотите сделать это в процессе Java, возьмите WSDL, совместимый с WSHumanTask, и вызовите соответствующие операции в соответствии со стандартом OASIS.