Datapower中的错误代码

时间:2014-12-17 23:35:12

标签: xslt ibm-datapower

我正在使用MPGW服务,它将访问CICS服务并返回响应。 这是我的流程。 UI - > DP MPGW网关 - > MPGW服务 - > CICS服务。

如果"没有找到数据"来自CICS的响应,我只想将错误代码设置为100,将消息设置为"没有找到数据"并传递给UI。但每次数据功能都会向UI返回500内部服务器错误。

我使用errorHandler.xslt检查CICS中的错误代码并设置错误代码和错误消息。

我需要更改dp:response-header(' x-dp-response-code')?如果是这样怎么做?

注意:处理后端错误:' On'在MPGW(网关和服务)中。

2 个答案:

答案 0 :(得分:1)

试试这个:

如果响应包含500未找到错误。做一个dp:拒绝响应规则。这将控制错误规则。在错误规则中,配置xslt并设置以下值:

<dp:set-variable name="'var://service/error-protocol-response'" value="'100'" /> <dp:set-variable name="'var://service/error-protocol-reason-phrase'" value="'No Data Found'" />

答案 1 :(得分:0)

根据你想要的https://www.ibm.com/developerworks/community/forums/html/topic?id=77777777-0000-0000-0000-000014432297

在错误规则中:

在响应规则中:  

我认为这应该是MPGW的诀窍。