Как остановить Назначение ролей на основе определенного условия в OIM 11g r2 PS3

Я кодировал один обработчик событий для перехвата операций role_assignment и role_revoke.

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

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

Как я должен это делать?

2 ответа

Решение

Вы должны бросить 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

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

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

Другие вопросы по тегам