Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema con un servicio nusoap

Estas en el tema de Problema con un servicio nusoap en el foro de PHP en Foros del Web. Hola buenas, a ver si me pueden ayudar con este servicio nusoap. Debe ser una tonteria poero no doy con la solucion: Miren tengo un ...
  #1 (permalink)  
Antiguo 06/09/2017, 11:48
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 11 años, 11 meses
Puntos: 5
Problema con un servicio nusoap

Hola buenas, a ver si me pueden ayudar con este servicio nusoap.

Debe ser una tonteria poero no doy con la solucion:

Miren tengo un archivo llamado "producto.php" y dentro tengo:

Código PHP:
Ver original
  1. require_once "lib/nusoap.php";
  2.      
  3.     function getProd($categoria) {
  4.         if ($categoria == "libros") {
  5.             return join(",", array(
  6.                 "El señor de los anillos",
  7.                 "Los límites de la Fundación",
  8.                 "The Rails Way"));
  9.         }
  10.         else {
  11.             return "No hay productos de esta categoria";
  12.         }
  13.     }
  14.      
  15.     $server = new soap_server();
  16.     $server->configureWSDL("producto", "urn:producto");
  17.      
  18.     $server->register("getProd",
  19.         array("categoria" => "xsd:string"),
  20.         array("return" => "xsd:string"),
  21.         "urn:producto",
  22.         "urn:producto#getProd",
  23.         "rpc",
  24.         "encoded",
  25.         "Nos da una lista de productos de cada categoría");
  26.  
  27.     $server->service($HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA));


luego tengo el archivo llamado "cliente.php" y dentro tengo:

Código PHP:
Ver original
  1. require_once "lib/nusoap.php";
  2.     $cliente = new nusoap_client("http://localhost/soap/producto.php");
  3.      
  4.     $error = $cliente->getError();
  5.     if ($error) {
  6.         echo "<h2>Constructor error</h2><pre>" . $error . "</pre>";
  7.     }
  8.      
  9.     $result = $cliente->call("getProd", array("categoria" => "libros"));
  10.      
  11.     if ($cliente->fault) {
  12.         echo "<h2>Fault</h2><pre>";
  13.         print_r($result);
  14.         echo "</pre>";
  15.     }
  16.     else {
  17.         $error = $cliente->getError();
  18.         if ($error) {
  19.             echo "<h2>Error</h2><pre>" . $error . "</pre>";
  20.         }
  21.         else {
  22.             echo "<h2>Libros</h2><pre>";
  23.             echo $result;
  24.             echo "</pre>";
  25.         }
  26.     }


Despues en el navegador pongo:

http://localhost/soap/cliente.php

y el error que me sale es:

"HTTP Error: Unsupported HTTP response status 404 Not Found (soapclient->response has contents of the response)"

Si alguien me pudiera decir donde esta el error se lo agradeceria mucho, llevo ya toda la tarde, he hecho mil pruebas y buceado por internet y no doy con la solucion.

Gracias de antemano.
  #2 (permalink)  
Antiguo 06/09/2017, 15:48
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Problema con un servicio nusoap

Saludo

El problema esta en el server.

Código PHP:
Ver original
  1. $HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
  2. $server->service($HTTP_RAW_POST_DATA);
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #3 (permalink)  
Antiguo 19/09/2017, 07:08
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 11 años, 11 meses
Puntos: 5
Respuesta: Problema con un servicio nusoap

Hola mortiprogramador.

Disculpa mi tardanza, no he podido hacerlo antes el contestarte a tu recomendación.

Efectivamente tienes razón era eso lo que me pasaba. Me ha servido de mucho tu ayuda y

ya esta arreglado.

Mil gracias fenomeno.

Etiquetas: nusoap, servicio
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:39.