log wso2 esb请求/对数据库的响应

时间:2015-03-09 08:24:58

标签: wso2 axis2 wso2esb synapse

我想构建一个记录器,记录所有传入的请求及其对数据库的响应。为此我创建了一个axis2模块,它应该在流入和流出中执行此操作 - 我不想触发序列中的日志记录,因为那时我需要将记录器放在我的所有服务中。

我的问题是:如何将ESB中的传入消息与返回消息相关联?我认为这是Synapse的用武之地,但我无法找到将消息链接在一起的正确属性:没有可用于执行此操作的messageId或correlationid。

有没有办法在axis2处理程序中访问消息的Synapse属性?

1 个答案:

答案 0 :(得分:1)

Axis2模块是一个正确的选择。要识别请求和响应,您可以检查messageID。如果您想在relavant responsemessage上下文中访问请求messagecontext,请尝试以下代码块;

MessageContext requestMessageCtx = responseMessageCtx.getOperationContext()
      .getMessageContext(WSDLConstants.MESSAGE_LABEL_IN_VALUE);

这是blog post