1

Я закодировал один обработчик событий, чтобы перехватить операцию role_assignment и role_revoke.Как остановить назначение роли на основе определенного условия в OIM 11g r2 PS3

Мне нужно запустить некоторый веб-сервис на удаленном сервере, и если ответ 200 _ OK, я ничего не хочу делать.

Но если ответ не 200, мне нужно выполнить назначение ролей.

Как мне это сделать?

+0

Когда выполняется ваше мероприятие? Это событие PreProcess? –

+0

Да, это обработчик события preprocess – Chaitanya

ответ

1

Вы должны выбросить EventFailedException из тела вашего обработчика события execute при сбое. Это означает, что оркестровка была неудачной. Неисправленная оркестровка вызовет compensate на всех обработчиках событий, которые уже были завершены, а затем выйдите чисто в FAILED статус. (Вы можете запросить ORCHPROCESS таблицы, чтобы найти отказавшие оркестровки.)

См JavaDoc этого исключения здесь: https://docs.oracle.com/cd/E52734_01/oim/OMJAV/oracle/iam/platform/kernel/EventFailedException.html

И документацию Oracle по разработке обработчиков пользовательских событий здесь: https://docs.oracle.com/cd/E27559_01/dev.1112/e27150/oper.htm#BGBHBIFH

(Это для более ранняя версия, но она в основном такая же в более поздних версиях.)

-1

Я бы добавил что-то к задаче процесса для обработки ответов от webservice.

+0

, можете ли вы более подробно рассказать о своем подходе к процессу, поскольку мы обеспечиваем роль, где мы можем использовать задачу процесса? – Chaitanya