简体   繁体   English

如何将业务故障传播到Oracle Identity Manager(OIM)UI

[英]How to propagate a Business Fault to Oracle Identity Manager (OIM) UI

I have an application instance, backed by a web service using OIM Webservices Connector. 我有一个应用程序实例,该实例由使用OIM Webservices连接器的Web服务支持。

This connector is used in a synchronous manner by OIM, so when I create a new account in OIM for this application instance, the webservice calls the partner link's method. OIM以同步方式使用此连接器,因此当我在OIM中为此应用程序实例创建新帐户时,Web服务将调用伙伴链接的方法。

Until the method ends its execution, the OIM screen hangs (as expected). 在方法结束执行之前,OIM屏幕将挂起(按预期方式)。

What seems strange to me is that, no matter the partner link's method executes successfully or not (when it does not execute properly, it throws an exception), the OIM operation actually ignores the exception and completes the operation. 对我来说似乎很奇怪的是,无论伙伴链接的方法执行成功与否(当执行不正确时,都会引发异常),OIM操作实际上会忽略该异常并完成操作。

在此处输入图片说明

Even if I explicitly throw an exception in the BPEL, I can see the error in the webservice log in weblogic, but the OIM method completes anyway. 即使我在BPEL中明确抛出异常,也可以在weblogic的webservice日志中看到该错误,但是OIM方法仍然可以完成。

在此处输入图片说明在此处输入图片说明

What one would expect from a situation like this, I guess, is that OIM could just give an error message on the screen, because the operation failed. 我猜想,从这种情况下,由于操作失败,OIM可能会在屏幕上给出一条错误消息,这是可以预期的。 But no, OIM ignores the errors and go on. 但是不,OIM会忽略错误并继续。

Then I've tried to change the process definition in Design Console to force the process to stop on any error, setting the flag "required for completion" below 然后,我尝试在设计控制台中更改流程定义,以强制流程在发生任何错误时停止,并在下面设置标志“要求完成”

在此处输入图片说明

So I think I am missing something here 所以我想我在这里错过了一些东西

How can I make OIM abort some operation when the webservice connector throws an exception? 当Web服务连接器引发异常时,如何使OIM中止某些操作?

假设您引发了ConnectorException,请在“响应”选项卡中检查是否已映射了该异常,并在“任务到对象状态的映射”中为所需的对象状态设置了所需的目标对象状态。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM