点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)亲爱的 我正在尝试在调用异...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)亲爱的 我正在尝试在调用异...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
亲爱的
我正在尝试在调用异常时获取http状态代码。 我认为我的位置正确,但是出现以下错误:
java.lang.NoSuchMethodException:无方法签名:com.sap.it.rt.adapter.openconnectors.exceptions.OpenConnectorsException.getStatusCode()适用于参数类型:()值:[ ]
消息属性:
我的代码:
def map = message.getProperties(); def ex = map.get(" CamelExceptionCaught"); 如果(ex!= null){ message.setHeader(" HTTP_CODE",ex.getStatusCode()); }
对此有任何帮助吗?
嗨,
" CamelExceptionCaught"属性仅包含IFlow捕获的任何异常。 这些异常不必特别是" AhcOperationFailedException"类型。 (它们只应继承Throwable类。)但是 getStatusCode()方法是Exception类" AhcOperationFailedException"的方法。 查看您的帖子时,我们可以看到您捕获的异常是另一种类型。 特别是它的类型为" OpenConnectorsException"。
此异常类没有" getStatusCode"方法。 但是它提供什么方法? 通过使用反射(如本文在本文中所示) 我们可以看到=" https://people.sap.com/mortenw"> Morten Wittrock ),OpenConnectorsException类仅带来了一个自己的(未继承)方法,称为" getMessage"。 因此,您唯一可以调用的函数是getMethod(),它返回一个String。
尽管如此,您仍可以在上面的输入中看到错误消息文本确实包含状态代码。 因此解决方案可能是调用getMessage以获取错误文本,然后解析该错误文本以获取状态代码。
下面的代码是"虚拟"代码,写在我头上。 因此,也许您必须纠正一两件事,但通常它应该像这样工作:
一周热门 更多>