Can you share the wire logs? On Sat, Feb 7, 2015 at 12:50 PM, Uvindra Dias Jayasinha <uvin...@wso2.com> wrote:
> The "Premature end of file" exception is still happening even when I add > those two properties in, this is a parser error happening on our end in the > insequence itself. I still cant understand why this isnt working. > > On 7 February 2015 at 12:15, Chanaka Fernando <chana...@wso2.com> wrote: > >> Hi Uvindra, >> >> According to the website, they expect content-length header in the >> request. You can use the below two property mediators to send the >> content-length always. >> >> <property name="FORCE_HTTP_CONTENT_LENGTH" value="true" >> scope="axis2"></property> >> <property name="COPY_CONTENT_LENGTH_FROM_INCOMING" value="true" >> scope="axis2"></property> >> >> >> Try the above properties prior to the send mediator. >> >> >> Thanks, >> Chanaka >> >> On Fri, Feb 6, 2015 at 11:28 PM, Uvindra Dias Jayasinha <uvin...@wso2.com >> > wrote: >> >>> Ok tried that Dushan, but now I get a different exception when I hit the >>> insequence >>> >>> >>> 23:24:38,849 LogMediator IN_MESSAGE = >>> >;;;;;;;;;;;;>;;;;;;;;;;;;>;;;;;;;;;;;;>;;;;;;;;;;;;>;;;;;;;;;;;;>;;;;;;;;;;;;>;;;;;;;;;;;;>;;;;;;;;;;;;IN_MESSAGE >>> RelayUtils Error while building Passthrough stream >>> org.apache.axiom.om.OMException: javax.xml.stream.XMLStreamException: >>> ParseError at [row,col]:[1,1] >>> Message: Premature end of file. >>> at >>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:296) >>> at >>> org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.getSOAPEnvelope(StAXSOAPModelBuilder.java:204) >>> at >>> org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.<init>(StAXSOAPModelBuilder.java:154) >>> at >>> org.apache.axiom.om.impl.AbstractOMMetaFactory.createStAXSOAPModelBuilder(AbstractOMMetaFactory.java:73) >>> at >>> org.apache.axiom.om.impl.AbstractOMMetaFactory.createSOAPModelBuilder(AbstractOMMetaFactory.java:79) >>> at >>> org.apache.axiom.om.OMXMLBuilderFactory.createSOAPModelBuilder(OMXMLBuilderFactory.java:196) >>> at >>> org.apache.axis2.builder.SOAPBuilder.processDocument(SOAPBuilder.java:55) >>> at >>> org.apache.synapse.transport.passthru.util.DeferredMessageBuilder.getDocument(DeferredMessageBuilder.java:118) >>> at >>> org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:107) >>> at >>> org.apache.synapse.transport.passthru.util.RelayUtils.buildMessage(RelayUtils.java:82) >>> at >>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:68) >>> at >>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47) >>> at >>> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131) >>> at org.apache.synapse.rest.Resource.process(Resource.java:297) >>> at org.apache.synapse.rest.API.process(API.java:298) >>> at >>> org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:76) >>> at >>> org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:50) >>> at >>> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:220) >>> at >>> org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:488) >>> at >>> org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:170) >>> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) >>> at >>> org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:225) >>> at >>> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) >>> at >>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) >>> at >>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) >>> at java.lang.Thread.run(Thread.java:662) >>> Caused by: javax.xml.stream.XMLStreamException: ParseError at >>> [row,col]:[1,1] >>> Message: Premature end of file. >>> at >>> com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:594) >>> at >>> org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.next(XMLStreamReaderWrapper.java:225) >>> at >>> org.apache.axiom.util.stax.dialect.DisallowDoctypeDeclStreamReaderWrapper.next(DisallowDoctypeDeclStreamReaderWrapper.java:34) >>> at >>> org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.next(XMLStreamReaderWrapper.java:225) >>> at >>> org.apache.axiom.util.stax.dialect.SJSXPStreamReaderWrapper.next(SJSXPStreamReaderWrapper.java:138) >>> at >>> org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext(StAXOMBuilder.java:681) >>> at >>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:214) >>> ... 25 more >>> 23:24:39,141 SequenceMediator Error while building message >>> org.apache.axis2.AxisFault: Error while building Passthrough stream >>> at >>> org.apache.synapse.transport.passthru.util.RelayUtils.handleException(RelayUtils.java:236) >>> at >>> org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:111) >>> at >>> org.apache.synapse.transport.passthru.util.RelayUtils.buildMessage(RelayUtils.java:82) >>> at >>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:68) >>> at >>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47) >>> at >>> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131) >>> at org.apache.synapse.rest.Resource.process(Resource.java:297) >>> at org.apache.synapse.rest.API.process(API.java:298) >>> at >>> org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:76) >>> at >>> org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:50) >>> at >>> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:220) >>> at >>> org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:488) >>> at >>> org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:170) >>> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) >>> at >>> org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:225) >>> at >>> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) >>> at >>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) >>> at >>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) >>> at java.lang.Thread.run(Thread.java:662) >>> Caused by: org.apache.axiom.om.OMException: >>> javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1] >>> Message: Premature end of file. >>> at >>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:296) >>> at >>> org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.getSOAPEnvelope(StAXSOAPModelBuilder.java:204) >>> at >>> org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.<init>(StAXSOAPModelBuilder.java:154) >>> at >>> org.apache.axiom.om.impl.AbstractOMMetaFactory.createStAXSOAPModelBuilder(AbstractOMMetaFactory.java:73) >>> at >>> org.apache.axiom.om.impl.AbstractOMMetaFactory.createSOAPModelBuilder(AbstractOMMetaFactory.java:79) >>> at >>> org.apache.axiom.om.OMXMLBuilderFactory.createSOAPModelBuilder(OMXMLBuilderFactory.java:196) >>> at >>> org.apache.axis2.builder.SOAPBuilder.processDocument(SOAPBuilder.java:55) >>> at >>> org.apache.synapse.transport.passthru.util.DeferredMessageBuilder.getDocument(DeferredMessageBuilder.java:118) >>> at >>> org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:107) >>> ... 17 more >>> Caused by: javax.xml.stream.XMLStreamException: ParseError at >>> [row,col]:[1,1] >>> Message: Premature end of file. >>> at >>> com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:594) >>> at >>> org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.next(XMLStreamReaderWrapper.java:225) >>> at >>> org.apache.axiom.util.stax.dialect.DisallowDoctypeDeclStreamReaderWrapper.next(DisallowDoctypeDeclStreamReaderWrapper.java:34) >>> at >>> org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.next(XMLStreamReaderWrapper.java:225) >>> at >>> org.apache.axiom.util.stax.dialect.SJSXPStreamReaderWrapper.next(SJSXPStreamReaderWrapper.java:138) >>> at >>> org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext(StAXOMBuilder.java:681) >>> at >>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:214) >>> ... 25 more >>> >>> >>> On 6 February 2015 at 22:50, Dushan Abeyruwan <dus...@wso2.com> wrote: >>> >>>> Your API should be as. >>>> >>>> >>>> <api xmlns="http://ws.apache.org/ns/synapse" name="tempAPI" >>>> context="/temp"> >>>> <resource methods="POST GET"> >>>> <inSequence> >>>> <log level="custom"> >>>> <property name="IN_MESSAGE" >>>> value=">;;;;;;;;;;;;;>;;;;;;;;;;;;;>;;;;;;;;;;;;;>;;;;;;;;;;;;;>;;;;;;;;;;;;;>;;;;;;;;;;;;;>;;;;;;;;;;;;;>;;;;;;;;;;;;;IN_MESSAGE"></property> >>>> </log> >>>> <property name="messageType" value="application/xml" >>>> scope="axis2"></property> >>>> * <property name="FORCE_HTTP_1.0" value="true" >>>> scope="axis2"></property>* >>>> * <property name="DISABLE_CHUNKING" value="true" >>>> scope="axis2"></property>* >>>> <payloadFactory media-type="xml"> >>>> <format> >>>> <soapenv:Envelope xmlns:soapenv=" >>>> http://schemas.xmlsoap.org/soap/envelope/" xmlns:web=" >>>> http://www.w3schools.com/webservices/"> >>>> <soapenv:Header></soapenv:Header> >>>> <soapenv:Body> >>>> <web:CelsiusToFahrenheit> >>>> <web:Celsius>$1</web:Celsius> >>>> </web:CelsiusToFahrenheit> >>>> </soapenv:Body> >>>> </soapenv:Envelope> >>>> </format> >>>> <args> >>>> <arg evaluator="json" expression="$.celsius"></arg> >>>> </args> >>>> </payloadFactory> >>>> <send> >>>> <endpoint> >>>> <address uri=" >>>> http://www.w3schools.com/webservices/tempconvert.asmx?op=CelsiusToFahrenheit" >>>> format="soap11"></address> >>>> </endpoint> >>>> </send> >>>> </inSequence> >>>> <outSequence> >>>> <log level="custom"> >>>> <property name="OUT_MESSAGE" >>>> value=">;;;;;;;;;;;;;;>;;;;;;;;;;;;;;>;;;;;;;;;;;;;;>;;;;;;;;;;;;;;>;;;;;;;;;;;;;;>;;;;;;;;;;;;;;>;;;;;;;;;;;;;;>;;;;;;;;;;;;;;OUT_MESSAGE"></property> >>>> </log> >>>> <property name="messageType" value="application/json" >>>> scope="axis2"></property> >>>> <payloadFactory media-type="xml"> >>>> <format> >>>> <Temp xmlns="">$1</Temp> >>>> </format> >>>> <args> >>>> <arg xmlns:foo="http://www.w3schools.com/webservices/" >>>> evaluator="xml" >>>> expression="//foo:CelsiusToFahrenheitResponse/foo:CelsiusToFahrenheitResult"></arg> >>>> </args> >>>> </payloadFactory> >>>> <send></send> >>>> </outSequence> >>>> </resource> >>>> </api> >>>> >>>> >>>> xxx-MacBook-Pro:bin dushan$ curl -i -POST -H 'Accept: application/json' >>>> -H 'Content-Type:application/json' -d '{"celsius":12}' >>>> http://192.168.56.1:8281/temp >>>> HTTP/1.1 200 OK >>>> X-AspNet-Version: 4.0.30319 >>>> Content-Type: application/json >>>> X-Powered-By: ASP.NET >>>> Cache-Control: private, max-age=0,public >>>> Date: Fri, 06 Feb 2015 17:19:20 GMT >>>> Server: WSO2-PassThrough-HTTP >>>> Transfer-Encoding: chunked >>>> >>>> {"Temp":53.6}xxx-xxx-Pro:bin xx$ >>>> >>>> On Thu, Feb 5, 2015 at 1:10 AM, Uvindra Dias Jayasinha < >>>> uvin...@wso2.com> wrote: >>>> >>>>> Thanks Sampath and Asanka, >>>>> >>>>> Tried both your suggestions and now Im getting different exception >>>>> >>>>> RelayUtils Error while building Passthrough stream >>>>> org.apache.axiom.om.OMException: javax.xml.stream.XMLStreamException: >>>>> ParseError at [row,col]:[3,68] >>>>> Message: DOCTYPE is not allowed >>>>> at >>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:296) >>>>> at >>>>> org.apache.axiom.om.impl.llom.OMDocumentImpl.getOMDocumentElement(OMDocumentImpl.java:109) >>>>> at >>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder.getDocumentElement(StAXOMBuilder.java:570) >>>>> at >>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder.getDocumentElement(StAXOMBuilder.java:566) >>>>> at >>>>> org.apache.synapse.transport.passthru.util.DeferredMessageBuilder.getDocument(DeferredMessageBuilder.java:129) >>>>> at >>>>> org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:107) >>>>> at >>>>> org.apache.synapse.transport.passthru.util.RelayUtils.buildMessage(RelayUtils.java:82) >>>>> at >>>>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:68) >>>>> at >>>>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47) >>>>> at >>>>> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131) >>>>> at org.apache.synapse.rest.Resource.process(Resource.java:297) >>>>> at org.apache.synapse.rest.API.process(API.java:298) >>>>> at >>>>> org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:76) >>>>> at >>>>> org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:50) >>>>> at >>>>> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:220) >>>>> at >>>>> org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:488) >>>>> at >>>>> org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:170) >>>>> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) >>>>> at >>>>> org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:225) >>>>> at >>>>> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) >>>>> at java.lang.Thread.run(Thread.java:662) >>>>> Caused by: javax.xml.stream.XMLStreamException: ParseError at >>>>> [row,col]:[3,68] >>>>> Message: DOCTYPE is not allowed >>>>> at >>>>> com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:594) >>>>> at >>>>> org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.next(XMLStreamReaderWrapper.java:225) >>>>> at >>>>> org.apache.axiom.util.stax.dialect.DisallowDoctypeDeclStreamReaderWrapper.next(DisallowDoctypeDeclStreamReaderWrapper.java:34) >>>>> at >>>>> org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.next(XMLStreamReaderWrapper.java:225) >>>>> at >>>>> org.apache.axiom.util.stax.dialect.SJSXPStreamReaderWrapper.next(SJSXPStreamReaderWrapper.java:138) >>>>> at >>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext(StAXOMBuilder.java:681) >>>>> at >>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:214) >>>>> ... 22 more >>>>> 11:30:13,251 SequenceMediator Error while building message >>>>> org.apache.axis2.AxisFault: Error while building Passthrough stream >>>>> at >>>>> org.apache.synapse.transport.passthru.util.RelayUtils.handleException(RelayUtils.java:236) >>>>> at >>>>> org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:111) >>>>> at >>>>> org.apache.synapse.transport.passthru.util.RelayUtils.buildMessage(RelayUtils.java:82) >>>>> at >>>>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:68) >>>>> at >>>>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47) >>>>> at >>>>> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131) >>>>> at org.apache.synapse.rest.Resource.process(Resource.java:297) >>>>> at org.apache.synapse.rest.API.process(API.java:298) >>>>> at >>>>> org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:76) >>>>> at >>>>> org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:50) >>>>> at >>>>> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:220) >>>>> at >>>>> org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:488) >>>>> at >>>>> org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:170) >>>>> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) >>>>> at >>>>> org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:225) >>>>> at >>>>> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) >>>>> at >>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) >>>>> at java.lang.Thread.run(Thread.java:662) >>>>> Caused by: org.apache.axiom.om.OMException: >>>>> javax.xml.stream.XMLStreamException: ParseError at [row,col]:[3,68] >>>>> Message: DOCTYPE is not allowed >>>>> at >>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:296) >>>>> at >>>>> org.apache.axiom.om.impl.llom.OMDocumentImpl.getOMDocumentElement(OMDocumentImpl.java:109) >>>>> at >>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder.getDocumentElement(StAXOMBuilder.java:570) >>>>> at >>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder.getDocumentElement(StAXOMBuilder.java:566) >>>>> at >>>>> org.apache.synapse.transport.passthru.util.DeferredMessageBuilder.getDocument(DeferredMessageBuilder.java:129) >>>>> at >>>>> org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:107) >>>>> ... 17 more >>>>> Caused by: javax.xml.stream.XMLStreamException: ParseError at >>>>> [row,col]:[3,68] >>>>> Message: DOCTYPE is not allowed >>>>> at >>>>> com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:594) >>>>> at >>>>> org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.next(XMLStreamReaderWrapper.java:225) >>>>> at >>>>> org.apache.axiom.util.stax.dialect.DisallowDoctypeDeclStreamReaderWrapper.next(DisallowDoctypeDeclStreamReaderWrapper.java:34) >>>>> at >>>>> org.apache.axiom.util.stax.wrapper.XMLStreamReaderWrapper.next(XMLStreamReaderWrapper.java:225) >>>>> at >>>>> org.apache.axiom.util.stax.dialect.SJSXPStreamReaderWrapper.next(SJSXPStreamReaderWrapper.java:138) >>>>> at >>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext(StAXOMBuilder.java:681) >>>>> at >>>>> org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:214) >>>>> ... 22 more >>>>> >>>>> Any ideas? >>>>> >>>>> >>>>> On 5 February 2015 at 07:48, Asanka Dissanayake <asan...@wso2.com> >>>>> wrote: >>>>> >>>>>> Hi Uvindra, >>>>>> Seems message failing during the building. And it picks the wrong >>>>>> formatter it seems. Set the content header in the curl as follows. >>>>>> >>>>>> curl -i -POST -H 'Accept: application/json' -H >>>>>> 'Content-Type:application/json' -d '{"celsius":12}' http://<IP >>>>>> Address>:8280/<api context> >>>>>> >>>>>> Thanks, >>>>>> Asanka D >>>>>> >>>>>> On Wed, Feb 4, 2015 at 9:03 PM, Uvindra Dias Jayasinha < >>>>>> uvin...@wso2.com> wrote: >>>>>> >>>>>>> Im trying out Payload and Script mediator functionality to call this >>>>>>> SOAP service, >>>>>>> >>>>>>> >>>>>>> http://www.w3schools.com/webservices/tempconvert.asmx?op=CelsiusToFahrenheit >>>>>>> >>>>>>> >>>>>>> by simulating a REST API using ESB 4.8.1, here is the synapse >>>>>>> configuration I have defined >>>>>>> >>>>>>> >>>>>>> <api xmlns="http://ws.apache.org/ns/synapse" name="tempAPI" >>>>>>> context="/temp"> >>>>>>> <resource methods="POST GET"> >>>>>>> <inSequence> >>>>>>> <log level="custom"> >>>>>>> <property name="IN_MESSAGE" >>>>>>> value=">;;;;;;;>;;;;;;;>;;;;;;;>;;;;;;;>;;;;;;;>;;;;;;;>;;;;;;;>;;;;;;;IN_MESSAGE"></property> >>>>>>> </log> >>>>>>> <property name="messageType" value="application/xml" >>>>>>> scope="axis2"></property> >>>>>>> <payloadFactory media-type="xml"> >>>>>>> <format> >>>>>>> <soapenv:Envelope xmlns:soapenv=" >>>>>>> http://schemas.xmlsoap.org/soap/envelope/" xmlns:web=" >>>>>>> http://www.w3schools.com/webservices/"> >>>>>>> <soapenv:Header></soapenv:Header> >>>>>>> <soapenv:Body> >>>>>>> <web:CelsiusToFahrenheit> >>>>>>> <web:Celsius>$1</web:Celsius> >>>>>>> </web:CelsiusToFahrenheit> >>>>>>> </soapenv:Body> >>>>>>> </soapenv:Envelope> >>>>>>> </format> >>>>>>> <args> >>>>>>> <arg evaluator="json" expression="$.celsius"></arg> >>>>>>> </args> >>>>>>> </payloadFactory> >>>>>>> <send> >>>>>>> <endpoint> >>>>>>> <address uri=" >>>>>>> http://www.w3schools.com/webservices/tempconvert.asmx?op=CelsiusToFahrenheit" >>>>>>> format="soap11"></address> >>>>>>> </endpoint> >>>>>>> </send> >>>>>>> </inSequence> >>>>>>> <outSequence> >>>>>>> <log level="custom"> >>>>>>> <property name="OUT_MESSAGE" >>>>>>> value=">;;;;;;;>;;;;;;;>;;;;;;;>;;;;;;;>;;;;;;;>;;;;;;;>;;;;;;;>;;;;;;;OUT_MESSAGE"></property> >>>>>>> </log> >>>>>>> <property name="messageType" value="application/json" >>>>>>> scope="axis2"></property> >>>>>>> <script language="js">var temp = >>>>>>> mc.getPayloadXML()..*::CelsiusToFahrenheitResponse.CelsiusToFahrenheitResult.toString(); >>>>>>> mc.setPayloadJSON( { >>>>>>> "Temp" : { "Faran" : >>>>>>> temp } });</script> >>>>>>> <send></send> >>>>>>> </outSequence> >>>>>>> </resource> >>>>>>> </api> >>>>>>> >>>>>>> >>>>>>> When I invoke the above using, >>>>>>> >>>>>>> curl -i -POST -H 'Accept: application/json' -d '{"celsius":12}' >>>>>>> http://<IP Address>:8280/<api context> >>>>>>> >>>>>>> I get the following exception, >>>>>>> >>>>>>> 6:53:00,577 RelayUtils Error while building Passthrough stream >>>>>>> java.lang.StringIndexOutOfBoundsException: String index out of >>>>>>> range: -1 >>>>>>> at java.lang.String.substring(String.java:1937) >>>>>>> at >>>>>>> org.apache.axis2.builder.XFormURLEncodedBuilder.extractParametersFromRequest(XFormURLEncodedBuilder.java:174) >>>>>>> at >>>>>>> org.apache.axis2.builder.XFormURLEncodedBuilder.processDocument(XFormURLEncodedBuilder.java:112) >>>>>>> at >>>>>>> org.apache.synapse.commons.builders.XFormURLEncodedBuilder.processDocument(XFormURLEncodedBuilder.java:36) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.util.DeferredMessageBuilder.getDocument(DeferredMessageBuilder.java:118) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:107) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.util.RelayUtils.buildMessage(RelayUtils.java:82) >>>>>>> at >>>>>>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:68) >>>>>>> at >>>>>>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47) >>>>>>> at >>>>>>> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131) >>>>>>> at org.apache.synapse.rest.Resource.process(Resource.java:297) >>>>>>> at org.apache.synapse.rest.API.process(API.java:341) >>>>>>> at >>>>>>> org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:76) >>>>>>> at >>>>>>> org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:63) >>>>>>> at >>>>>>> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:220) >>>>>>> at >>>>>>> org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:83) >>>>>>> at >>>>>>> org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:344) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:385) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:183) >>>>>>> at >>>>>>> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) >>>>>>> at >>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) >>>>>>> at >>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) >>>>>>> at java.lang.Thread.run(Thread.java:662) >>>>>>> 06:53:00,578 SequenceMediator Error while building message >>>>>>> org.apache.axis2.AxisFault: Error while building Passthrough stream >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.util.RelayUtils.handleException(RelayUtils.java:236) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:111) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.util.RelayUtils.buildMessage(RelayUtils.java:82) >>>>>>> at >>>>>>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:68) >>>>>>> at >>>>>>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:47) >>>>>>> at >>>>>>> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:131) >>>>>>> at org.apache.synapse.rest.Resource.process(Resource.java:297) >>>>>>> at org.apache.synapse.rest.API.process(API.java:341) >>>>>>> at >>>>>>> org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:76) >>>>>>> at >>>>>>> org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:63) >>>>>>> at >>>>>>> org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:220) >>>>>>> at >>>>>>> org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:83) >>>>>>> at >>>>>>> org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:344) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:385) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:183) >>>>>>> at >>>>>>> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) >>>>>>> at >>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) >>>>>>> at >>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) >>>>>>> at java.lang.Thread.run(Thread.java:662) >>>>>>> Caused by: java.lang.StringIndexOutOfBoundsException: String index >>>>>>> out of range: -1 >>>>>>> at java.lang.String.substring(String.java:1937) >>>>>>> at >>>>>>> org.apache.axis2.builder.XFormURLEncodedBuilder.extractParametersFromRequest(XFormURLEncodedBuilder.java:174) >>>>>>> at >>>>>>> org.apache.axis2.builder.XFormURLEncodedBuilder.processDocument(XFormURLEncodedBuilder.java:112) >>>>>>> at >>>>>>> org.apache.synapse.commons.builders.XFormURLEncodedBuilder.processDocument(XFormURLEncodedBuilder.java:36) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.util.DeferredMessageBuilder.getDocument(DeferredMessageBuilder.java:118) >>>>>>> at >>>>>>> org.apache.synapse.transport.passthru.util.RelayUtils.builldMessage(RelayUtils.java:107) >>>>>>> >>>>>>> >>>>>>> Any idea what Im doing wrong? This should be straight forward, Thanks >>>>>>> >>>>>>> -- >>>>>>> Regards, >>>>>>> Uvindra >>>>>>> >>>>>>> Mobile: 777733962 >>>>>>> >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Dev mailing list >>>>>>> Dev@wso2.org >>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> >>>>>> >>>>>> *Asanka DissanayakeSoftware Engineer* >>>>>> *WSO2 Inc. - lean . enterprise . middleware | wso2.com >>>>>> <http://wso2.com/>* >>>>>> >>>>>> *email: asan...@wso2.com <ruch...@wso2.com>, blog: >>>>>> cyberwaadiya.blogspot.com >>>>>> <http://cyberwaadiya.blogspot.com>, asankastechtalks.wordpress.com >>>>>> <http://asankastechtalks.wordpress.com> mobile: +94 71 8373821* >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Regards, >>>>> Uvindra >>>>> >>>>> Mobile: 777733962 >>>>> >>>>> _______________________________________________ >>>>> Dev mailing list >>>>> Dev@wso2.org >>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>> >>>>> >>>> >>>> >>>> -- >>>> Dushan Abeyruwan | Associate Tech Lead >>>> Integration Technologies Team >>>> PMC Member Apache Synpase >>>> WSO2 Inc. http://wso2.com/ >>>> Blog:http://dushansview.blogspot.com/ >>>> Mobile:(0094)713942042 >>>> >>>> >>> >>> >>> -- >>> Regards, >>> Uvindra >>> >>> Mobile: 777733962 >>> >>> _______________________________________________ >>> Dev mailing list >>> Dev@wso2.org >>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>> >>> >> >> >> -- >> -- >> Chanaka Fernando >> Technical Lead >> WSO2, Inc.; http://wso2.com >> lean.enterprise.middleware >> >> mobile: +94 773337238 >> Blog : http://soatutorials.blogspot.com >> LinkedIn:http://www.linkedin.com/pub/chanaka-fernando/19/a20/5b0 >> Twitter:https://twitter.com/chanakaudaya >> Wordpress:http://chanakaudaya.wordpress.com >> >> >> >> > > > -- > Regards, > Uvindra > > Mobile: 777733962 > > _______________________________________________ > Dev mailing list > Dev@wso2.org > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- Best Regards, Malaka Silva Senior Tech Lead M: +94 777 219 791 Tel : 94 11 214 5345 Fax :94 11 2145300 Skype : malaka.sampath.silva LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77 Blog : http://mrmalakasilva.blogspot.com/ WSO2, Inc. lean . enterprise . middleware http://www.wso2.com/ http://www.wso2.com/about/team/malaka-silva/ <http://wso2.com/about/team/malaka-silva/> Save a tree -Conserve nature & Save the world for your future. Print this email only if it is absolutely necessary.
_______________________________________________ Dev mailing list Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev