在WSO2中读取JMS映射消息

时间:2016-11-17 18:05:22

标签: java wso2 wso2esb

我正在阅读WSO2 ESB的JMS Map消息。我能够选择消息,读取所有标题,但无法读取消息正文中的任何内容。我创建了一个自定义中介,当我尝试以下内容并在标题中提交带有MSG_FORMAT属性的JMS消息时,它可以正常工作。然而,当我将该属性放入Map Body时,WSO2并没有把它拿起来。下面的代码用于读取标题,但不会读取Map Body

public boolean mediate(MessageContext context) {
        String msgFormat = context.getProperty(MSG_FORMAT).toString();

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

根据您的解释,当您从JMS队列使用时,您似乎正在尝试在自定义中介中读取消息。

为了阅读邮件,您可以在mediate方法中使用以下代码:

public boolean mediate(MessageContext context) {
        String msgFormat = context.getProperty(MSG_FORMAT).toString();
        SOAPEnvelope envelope = synCtx.getEnvelope()
....

参考:https://synapse.apache.org/apidocs/org/apache/synapse/MessageContext.html