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 <[email protected]>
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 <[email protected]> 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 <[email protected]>
>> 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 <[email protected]>
>>> 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 <
>>>> [email protected]> 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
>>>>> [email protected]
>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>>
>>>>
>>>> *Asanka DissanayakeSoftware Engineer*
>>>> *WSO2 Inc. - lean . enterprise . middleware | wso2.com
>>>> <http://wso2.com/>*
>>>>
>>>> *email: [email protected] <[email protected]>, 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
>>> [email protected]
>>> 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
> [email protected]
> 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
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev