0

我使用 IBM ODM 制作了一个非常简单的 RuleApp,并将其部署到 Rule Execution Server (RES)。

我打算使用 SOAP 协议调用此应用程序,因此我从 HTDS 检索了 WSDL 定义。

该服务的输入是一个简单的类,其中包含一个名为 的字符串字段input1

输出类也很简单,只有一个字符串字段 - output1

当我使用值为“Error”的值调用此 SOAP 服务时input1,我想使用 SOAP Fault 进行响应并自定义它的 Description 字段。

否则,我想发送一个output1字段设置为“成功!”的常规响应。

我尝试使用 Action Rule 和一条if else语句来执行此操作,抛出新的 java.lang.Exception。

在 的情况下input1=="Error",异常被调用,并且我收到一条 SOAP 错误消息,其中在描述字段中打印了堆栈跟踪。

我对如何自定义这个故障响应很感兴趣,所以我可以将描述字段设置为“something”,将 faultactor 字段设置为“something2”,将 faultstring 设置为“something3”?

4

1 回答 1

0

我从未见过有人做你想做的事。

一般来说,我不希望 SOAP 故障用于报告业务级信息。我希望在 SOAP 响应中报告业务结果,甚至是负面或异常结果,让 SOAP 故障来处理服务器级问题。

我鼓励您尽可能少地进行定制,如果可行的话,尽量使用开箱即用的功能。通过 HTDS 运行 ODM 的全部意义在于将一切标准化,以避免不得不处理进程间通信问题,从而将更多时间集中在解决业务级问题上。

于 2018-09-07T04:40:13.347 回答