在wso2 esb中处理引用的字符串作为json响应

时间:2017-08-08 09:57:18

标签: json wso2 wso2esb

后端发送响应为“c7806e18-4284-447a-a00a-c221e3323223”,内容类型设置为 application / json 。 根据一些是有效的json。但是WSO2 ESB给出了以下错误“

[2017-08-08 14:12:57,037] ERROR - JsonUtil #getNewJsonPayload. Could not save JSON payload. Invalid input stream found. MessageID: urn:uuid:45214ed3-ca29-4be4-8f03-6bd1b109773d
[2017-08-08 14:12:57,053] ERROR - DeferredMessageBuilder Error building message
org.apache.axis2.AxisFault: Payload is not a JSON string.
        at org.apache.synapse.commons.json.JsonUtil.getNewJsonPayload(JsonUtil.java:558)
        at org.apache.synapse.commons.json.JsonStreamBuilder.processDocument(JsonStreamBuilder.java:45)
        at org.apache.synapse.transport.passthru.util.DeferredMessageBuilder.getDocument(DeferredMessageBuilder.java:148)
        at org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:137)
        at org.apache.synapse.transport.passthru.util.RelayUtils.buildMessage(RelayUtils.java:100)
        at org.apache.synapse.mediators.AbstractListMediator.buildMessage(AbstractListMediator.java:140)
        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:83)
        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
        at org.apache.synapse.mediators.filters.FilterMediator.mediate(FilterMediator.java:169)
        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:97)
        at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:59)
        at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:158)
        at org.apache.synapse.rest.Resource.process(Resource.java:343)
        at org.apache.synapse.rest.API.process(API.java:338)
        at org.apache.synapse.rest.RESTRequestHandler.apiProcess(RESTRequestHandler.java:123)
        at org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:101)
        at org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:56)
        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:304)
        at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:554)
        at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:188)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
        at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:261)
        at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

`

1 个答案:

答案 0 :(得分:0)

这是WSO2 ESB中的问题[1],将在EI版本6.2中修复。目前,您可以将里程碑版本[2]用于您的用例。

[1] https://wso2.org/jira/browse/ESBJAVA-4902

[2] https://github.com/wso2/product-ei/releases/tag/v6.2.0-m1