在OSB 12c中自定义验证节点错误消息

时间:2017-08-14 21:26:30

标签: xsd osb

当我们在OSB 12c中添加验证节点以验证针对XSD的传入请求时,如果验证失败, 在某些故障消息中,将显示导致验证错误的字段名称。但只有十进制值,故障消息只是说无效的十进制值,并没有提到抛出错误的字段。我们能否克服这个问题

1 个答案:

答案 0 :(得分:1)

我不确定这是直接解决方案。但是有一种可能适合您需求的解决方法

创建一个XQuery,用于验证有效负载并引发自定义错误消息

例如:for xml元素应包含十进制值abc

if ($a instance of xs:long) then () else (fn:error(xs:QName('Your error code'), 'your error message')) 如果有效载荷很小,这是一种合适的方法。

https://gibaholms.wordpress.com/2013/09/24/osb-throw-exception-in-xquery 1

如果有效负载很大

  1. 识别应该具有这些类型问题的字段。
  2. 使用错误消息创建一个XQuery以验证这些字段。
  3. 在舞台内使用验证节点并使用舞台错误处理程序
  4. 使用阶段错误处理程序
  5. 中的xquery验证有效内容