Consumir un Servicio Web en PHP utilizando NuSoap
filed in Uncategorized on Sep.03, 2008
Hola tigre ahora te explicare como Consumir un Servicio Web utilizando NuSoap 0.7.3. para ello debes tener creado un Servicio Web en cualquier lenguaje (PHP, .NET, JAVA, etc….), para explicarte, y para que me entiendas mejor usaremos el Servicio Web creado en el post anterior; Empecemos :
1.- Para que funcione el ejemplo descárgate las clases de NuSOAP versión 0.7.3 puedes hacerlo desde la pagina http://sourceforge.net/projects/nusoap/.
2.- Después descomprimes ese archivo y lo copias a tu sitio web (para este ejemplo el sitio se llama miwebservice y los archivos de NuSOAP los puse en un directorio llamado lib-nusoap).
3.- Luego ejecutas en tu MySQL 5.0 el script de la Base de Datos db_productos.sql que lo puedes descargar desde esta pagina.
4.- Posteriormente crea una pagina PHP (en este ejemplo la pagina se llama clienteweb.php) y codificas lo siguiente:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | <?php require_once('lib-nusoap/nusoap.php'); $wsdl="http://localhost/miwebservice/servicioweb.php?wsdl"; //url del webservice que invocaremos $client=new nusoap_client($wsdl,'wsdl'); //instanciando un nuevo objeto cliente para consumir el webservice $param=array('estado'=>'1'); //pasando parametros de entrada que seran pasados hacia el metodo $productos = $client->call('ListarProductos', $param); //llamando al metodo y recuperando el array de productos en una variable //¿ocurrio error al llamar al web service? if ($client->fault) { // si echo 'No se pudo completar la operación'; die(); }else{ // no $error = $client->getError(); if ($error) { // Hubo algun error echo 'Error:' . $error; } } if(is_array($productos)){ //si hay valores en el array for($i=0;$i<count($productos);$i++){ echo $productos[$i]['ProductoID'].' '.$productos[$i]['Nombre'].' su precio es : '.$productos[$i]['Precio'].'<br>'; } }else{ echo 'No hay productos'; } ?> |
Y al ejecutar en el navegador te debe mostrar algo así:

Si deseas puedes descargar el ejemplo completo desde aquí.
Ahora si me voy a tomar mi leche, mucha suerte tigre!!
May 27th, 2009 on 3:43 pm
que tal…
oye tengo un problema con el ejemplo
al ejecutarlo me aparece lo siguiente
“Error:Response not of type text/xml: text/htmlNo hay productos”
que andara mal??? podrias auxiliarme???
Te invito a que visites y comentes mi blog | http://www.ddsmedia.net/blog
June 8th, 2009 on 12:16 am
Hola estuve probando los archivos que tu realizaste e incluso pues estructure la base de datos pero me marca un error:
Error:Response not of type text/xml: text/htmlNo hay productos
Y la probe con una base mia cambiando las variables y aun asi me marca el mismo error, a q se debera?
July 3rd, 2009 on 5:39 pm
me marca el siguiente error : Error:Response not of type text/xml: text/htmlNo hay productos
estoy utilizando el XAMPP en OSX , cual sera el problema?
July 22nd, 2009 on 9:44 am
Lo mas problable es que no hayas restaurado los registros del backup de Base de Datos.
Saludos
August 20th, 2009 on 2:38 pm
Muy buen ejemplo compadre… despues de una pequeñas modificaciones,.. funciono super bien
August 25th, 2009 on 1:46 pm
MUY CHEVERE TU APORTE PERO IGUAL ME SALE ESTE MENSAJE Error:XML error parsing SOAP payload on line 1: Empty documentNo hay productos
August 25th, 2009 on 1:51 pm
Hola,
Fijate si haz restaurado los registros en la Base de Fatos correctamente.
Saludos