1

我编写了一个事件处理程序来拦截 role_assignment 和 role_revoke 操作。

我需要在远程服务器上运行一些网络服务,如果响应为 200 _ OK,我什么也不想做。

但如果响应不是 200,我需要失败角色分配。

我该怎么做?

4

2 回答 2

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

(这是针对早期版本的,但在以后的版本中基本相同。)

于 2017-01-30T00:27:00.523 回答
-1

我会在流程任务中添加一些东西来处理来自那里的 web 服务的响应。

于 2017-01-17T20:37:48.690 回答