PDA

Ver la Versión Completa : Consumir webservice de genexus desde ABAP


zenytt
19/03/12, 11:39:47
Hola a todos, este es mi primer thread...

Les hago una consulta de conexion SAP - Genexus mediante webservices...

Tengo hecho un webservice en genexus X y quiero consumirlo con ABAP mediante código, no con los objetos proxy y eso, sino con los CALL METHOD HTTP_CLIENT y eso.

Esto último es así, puesto que la informacion de ip y aplicacion donde voy a consumir el webservice en genexus lo saco de unas tablas mias de abap que voy a ir cargando y cambiando eventualmente, o sea que a priori no los puedo saber y por lo tanto no puedo usar los grupos de funciones proxy (como he visto en otros lados)…

este webservice graba algunas cosas en las tablas de la aplicacion genexus (con los datos que le llegan de abap) y devuelve a ABAP un codigo de error, un mensaje y alguna cosa mas

En un momento, el codigo pone

CALL METHOD HTTP_CLIENT->REQUEST->SET_HEADER_FIELD
EXPORTING
NAME = '~request_method'
VALUE = 'POST'.

para hacerlo con metodo POST, como tengo que configurar GX y/o ABAP? hasta ahora no logre que llegue o devuelva nada. Probe utilizando cosas como CALL METHOD http_client->REQUEST->SET_FORM_FIELD y CALL METHOD http_client->receive, pero no me ha funcionado.

pero si cambio para usar el metodo GET, logre que llegaran las cosas a genexus y las grabe en base de datos. Esto lo logre cuando, al relizar el siguiente llamado CALL METHOD cl_http_client=>create_by_url le paso la url armada "a mano" con los valores que quiero enviar, pero no logro devolver nada…

alguien tiene idea como puedo armar bien el webservice y que cosas poner en ambos lados? cualquiera de los dos metodos me sirve

saludos y gracias!

conrad10ar
19/03/12, 14:09:42
Entiendo que este post podrá servirte:

Webservice en SAP

Saludos!

zenytt
19/03/12, 14:34:25
Te agradezco la respuesta

el tema es que, siguiendo esos pasos, yo deberia saber a priori como es el wsdl que quiero consumir y eso no lo se... la aplicacion donde esta el WS, asi como su ip y demas datos los tengo que sacar de una tabla de SAP que voy llenando a medida que agrego nuevos WS o que se vayan modificando... con esos datos yo armo el wsdl que voy a consumir...

alguna otra idea?

saludos