我有一条消息是通过HTTP网关从post请求创建的。我真正想要的是一种从ESB中的任何操作中捕获任何异常并能够将其记录到数据库中的方法。我在消息头中看到了一些关于设置错误的信息,但是当消息来自http网关时,我找不到一种方法来设置它。此外,我不确定错误是不是最好的方法,因为一些操作创建了其他消息,而这些消息反过来也必须为它们设置错误。
发布于 2012-05-10 00:15:31
一种解决方案是使用从JBoss ESB4.11开始提供的全局操作管道拦截器功能,该功能允许您为所有服务配置全局拦截器,并在服务实例化、服务启动、服务结束和服务失败时拦截流。
它的描述如下:https://issues.jboss.org/browse/JBESB-3724
基本上,您实现接口"org.jboss.soa.esb.listeners.message.PipelineInterceptor“并在"jbossesb-properties.xml”中配置拦截点。
<properties name="interceptors">
<property name="org.jboss.soa.esb.pipeline.failure.interceptors"
value="org.foo.DatabaseLoggingInterceptor"/>
</properties>您可以配置由逗号分隔的多个不同的拦截器。
https://stackoverflow.com/questions/6741856
复制相似问题