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