Hi All,

I'm trying a scenario where I need to have caching enabled to improve
perfomance at API level.So I enabled response caching from my API. The API
contains resources to perform CRUD operations.

My problem is, when I try to invoke PUT method in my API after enabling
response caching, it gives me the following error.

[2017-11-24 14:16:39,969] ERROR - JsonUtil #writeAsJson. Payload could not
be written as JSON. MessageID: urn:uuid:ccc5fb5c-ec7b-4e51-879f-345cd8a54804
[2017-11-24 14:16:39,972] ERROR - PassThroughHttpSSLSender Failed to submit
the response
org.apache.axis2.AxisFault: Payload could not be written as JSON.
    at
org.apache.synapse.commons.json.JsonUtil.writeAsJson(JsonUtil.java:276)
    at
org.apache.synapse.commons.json.JsonFormatter.writeTo(JsonFormatter.java:62)
    at
org.apache.synapse.transport.passthru.PassThroughHttpSender.submitResponse(PassThroughHttpSender.java:573)
    at
org.apache.synapse.transport.passthru.PassThroughHttpSender.invoke(PassThroughHttpSender.java:264)
    at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
    at
org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:230)
    at
org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:531)
    at
org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:118)
    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.dispatchToAPI(RESTRequestHandler.java:90)
    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:262)
    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:748)
[2017-11-24 14:16:39,972] ERROR - Axis2Sender
Access-Control-Allow-Headers:authorization,Access-Control-Allow-Origin,Content-Type,SOAPAction,Access-Control-Allow-Methods:PUT,Access-Control-Allow-Origin:*,Content-Type:application/json;
charset=UTF-8,<?xml version='1.0' encoding='utf-8'?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Body/></soapenv:Envelope>
Unexpected error sending message back
org.apache.axis2.AxisFault: Failed to submit the response
    at
org.apache.synapse.transport.passthru.PassThroughHttpSender.handleException(PassThroughHttpSender.java:632)
    at
org.apache.synapse.transport.passthru.PassThroughHttpSender.invoke(PassThroughHttpSender.java:266)
    at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:442)
    at
org.apache.synapse.core.axis2.Axis2Sender.sendBack(Axis2Sender.java:230)
    at
org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(Axis2SynapseEnvironment.java:531)
    at
org.apache.synapse.mediators.builtin.SendMediator.mediate(SendMediator.java:118)
    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.dispatchToAPI(RESTRequestHandler.java:90)
    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:262)
    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:748)
Caused by: org.apache.axis2.AxisFault: Payload could not be written as JSON.
    at
org.apache.synapse.commons.json.JsonUtil.writeAsJson(JsonUtil.java:276)
    at
org.apache.synapse.commons.json.JsonFormatter.writeTo(JsonFormatter.java:62)
    at
org.apache.synapse.transport.passthru.PassThroughHttpSender.submitResponse(PassThroughHttpSender.java:573)
    at
org.apache.synapse.transport.passthru.PassThroughHttpSender.invoke(PassThroughHttpSender.java:264)

Can you please help me to solve this problem?

Thanks

-- 


*Buddhimala Ranasinghe*
Software Engineer-Support Team | WSO2
Emil: [email protected]
Mobile:+94771563138 <+94%2077%20156%203138>
Web:http://wso2.com
[image: https://wso2.com/signature] <https://wso2.com/signature>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to