[英]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不同的方式进行管理?
我如何找回它?
彼得
您似乎正面临与此处所述相同的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.