Works fine for me. Here's my TCPMon trace: POST /foo/bar/datos/getporid/1 HTTP/1.1 Content-Type: application/xml; charset=UTF-8 Accept: */* Transfer-Encoding: chunked Host: 127.0.0.1:8080 Connection: Keep-Alive User-Agent: Synapse-HttpComponents-NIO
8d <axis2ns37:_getdatosusuario_id xmlns:axis2ns37=" http://cdae.uci.cu/servicios/"> <axis2ns37:id>1</axis2ns37:id></axis2ns37:_getdatosusuario_id>0 Of course I had to add the following property mediator to make the GET-to-POST transformation: <property name="HTTP_METHOD" value="POST" scope="axis2"/> But didn't see any issue of the sort you have mentioned. Thanks, Hiranya On Sat, May 19, 2012 at 8:55 AM, Jorge Infante Osorio <[email protected]>wrote: > Hi all. > Any idea on this? > > Saludos, > Ing. Jorge Infante Osorio. > J´Dpto Soluciones SOA. > CDAE. > Fac. 5. > UCI. > > De: [email protected] [mailto:[email protected]] En nombre de > Jorge > Infante Osorio > Enviado el: miércoles, 16 de mayo de 2012 2:28 > Para: [email protected] > Asunto: [User] Problem with API in ESB > > Hi all. > I have this API: > > <api xmlns="http://ws.apache.org/ns/synapse" name="DatosUsuarios" > context="/datos"> > <resource methods="GET" uri-template="/listadousuarios" > inSequence="RESTin" outSequence="RESTout" faultSequence="fault" /> > <resource methods="GET" uri-template="/getporid/{id}" > inSequence="RESTinid" outSequence="RESToutid" faultSequence="fault" /> > </api> > > I want to call it in this way: curl -v > http://127.0.0.1:8280/datos/getporid/1 but the request in the BE it´s > malformed. > > > The Sequence RESTinid: > > <sequence xmlns="http://ws.apache.org/ns/synapse" name="RESTinid" > trace="enable"> > <log level="full" category="DEBUG"/> > <payloadFactory> > <format> > <axis2ns37:_getdatosusuario_id > xmlns:axis2ns37="http://cdae.uci.cu/servicios/"> > <axis2ns37:id>$1</axis2ns37:id> > </axis2ns37:_getdatosusuario_id> > </format> > <args> > <arg xmlns:ns="http://org.apache.synapse/xsd" > xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" > xmlns:ns3="http://org.apache.synapse/xsd" > expression="get-property('uri.var.id')"/> > </args> > </payloadFactory> > <send> > <endpoint> > <address > uri=" > http://127.0.0.1:9765/services/DatosUsuariosREST.HTTPEndpoint/datosusua > rio" format="rest"/> > </endpoint> > </send> > </sequence> > > With the payloadFactory mediator I have this error in the message format in > the BE restful service deploy in AS: > > <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"> > <soapenv:Header /> > <soapenv:Body> > <axis2ns57:_getdatosusuario_id > xmlns:axis2ns57="http://cdae.uci.cu/servicios/"> > <axis2ns57:id>datos/getporid/1</axis2ns57:id> > <axis2ns57:id>1</axis2ns57:id> > </axis2ns57:_getdatosusuario_id> > </soapenv:Body> > </soapenv:Envelope> > > Without the payloadFactory I see this: > > <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"> > <soapenv:Header /> > <soapenv:Body> > <axis2ns56:_getdatosusuario_id > xmlns:axis2ns56="http://cdae.uci.cu/servicios/"> > <axis2ns56:id>datos/getporid/1</axis2ns56:id> > </axis2ns56:_getdatosusuario_id> > </soapenv:Body> > </soapenv:Envelope> > > In any case I don´t know why I get this value: datos/getporid/1 > > In ESB I see this error: > Message ID : urn:uuid:b82cbd23-2c74-4e6f-9aeb-6b711c8f779e] [Status > Completed : true] [Status SendingCompleted : true] > [2012-05-16 02:19:44,816] WARN - ClientWorker Unexpected response > received. > HTTP response code : 500 HTTP status : Internal Server Error exception : > com.c > tc.wstx.exc.WstxParsingException: Unexpected close tag </body>; expected > </HR>. > at [row,col {unknown-source}]: [67,187] > [2012-05-16 02:19:44,818] ERROR - NativeWorkerPool Uncaught exception > java.lang.ClassCastException: org.apache.axiom.om.impl.llom.OMTextImpl > cannot be cast to org.apache.axiom.om.OMElement > at > > org.apache.synapse.util.MessageHelper.cloneSOAPFault(MessageHelper.java:441) > at > > org.apache.synapse.util.MessageHelper.cloneSOAPEnvelope(MessageHelper.java:2 > 54) > at > > org.apache.synapse.core.axis2.SOAPUtils.convertSOAP11toSOAP12(SOAPUtils.java > :95) > at > > org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseC > allbackReceiver.java:323) > at > > org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbac > kReceiver.java:160) > at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181) > at > org.apache.synapse.transport.nhttp.ClientWorker.run(ClientWorker.java:275) > at > > org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerP > ool.java:173) > at > > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.ja > va:886) > at > > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:9 > 08) > at java.lang.Thread.run(Thread.java:662) > > The out sequence: > <sequence xmlns="http://ws.apache.org/ns/synapse" name="RESTout" > trace="enable"> > <send/> > </sequence> > > > I try the BE service with curl, and all it´s fine. > curl > > http://127.0.0.1:9765/services/DatosUsuariosREST.HTTPEndpoint/datosusuario/1 > > > Saludos, > Ing. Jorge Infante Osorio. > J´Dpto Soluciones SOA. > CDAE. > Fac. 5. > UCI. > > > > > > > > > > 10mo. ANIVERSARIO DE LA CREACION DE LA UNIVERSIDAD DE LAS CIENCIAS > INFORMATICAS... > CONECTADOS AL FUTURO, CONECTADOS A LA REVOLUCION > > http://www.uci.cu > http://www.facebook.com/universidad.uci > http://www.flickr.com/photos/universidad_uci > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > -- Hiranya Jayathilaka Senior Technical Lead; WSO2 Inc.; http://wso2.org E-mail: [email protected]; Mobile: +94 77 633 3491 Blog: http://techfeast-hiranya.blogspot.com
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
