繁体   English   中英

MessageContext中的WSO2 ESB自定义轴模块JSON有效负载

[英]WSO2 ESB Custom Axis Module JSON Payload in MessageContext

我编写了一个自定义轴模块,以嗅探WSO2 ESB中的所有通信。 我已经在所有阶段都进行了注册-涉及SOAP通信时,一切都按预期工作。

但是,我无法检索WSO2 ESB中定义和调用的REST API的JSON有效负载。 即使我可以看到REST客户端中返回了JSON有效负载,MessageContext.getEnvelope仍返回一个空的正文。

基本上我的代码如下所示:

    public InvocationResponse invoke(MessageContext msgContext) throws AxisFault {
            String logId = msgContext.getLogCorrelationID();
            long currentTimestamp = System.currentTimeMillis();

            logEntry.setId(logId);

            if( msgContext.isDoingREST() ) {
                logEntry.setFormat(ILogEntry.FORMAT_REST);
                logEntry.setPayload(String.valueOf(msgContext.getEnvelope()));
            } else if( msgContext.isDoingMTOM() ) {
                logEntry.setFormat(ILogEntry.FORMAT_MTOM);
            } else if( msgContext.isDoingSwA() ) {
                logEntry.setFormat(ILogEntry.FORMAT_SWA);
            } else {
                logEntry.setFormat(ILogEntry.FORMAT_SOAP);
                JSONObject json = XML.toJSONObject(String.valueOf(msgContext.getEnvelope()));
                logEntry.setPayload(String.valueOf(json));
            }
    }

org.apache.axis2.context.MessageContext的JSON有效负载是否以与SOAP不同的方式进行管理?

我如何找回它?

彼得

您似乎正面临与此处所述相同的问题。

是否将基于JSON的REST-ESB-REST通信构建AXIS 2 XML MessageContext

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM