• Publicidad

Soap::lite dando problemas al iniciar cliente

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Re: Soap::lite dando problemas al iniciar cliente

Notapor scout » 2011-05-17 09:26 @435

Solucionado, el problema en dos sitios

1.- En el cliente nombraba el array directamente y tenía que ser así:

Ver fragmento de código cliente correcto:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use SOAP::Lite +autodispatch=>
  2.     uri => 'http://192.168.1.x:80/servidor',
  3.     proxy => 'http://192.168.1.x:80/cgi-bin/servidor.pl';
  4.  
  5. print "El numero de codigo es  ".SOAP->prueba()." \n";
  6. my @array = SOAP->prueba();
  7. print "Numero de los clientes\n";
  8. print "=======================\n\n";
  9. foreach my $valor (@array) {
  10.     print "$valor\n";
  11. }
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


En el servidor me funcionó quitando el return().

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. sub prueba {
  2.     # ...acceso a la base
  3.     while (($codigo) = $sth->fetchrow_array) {
  4.         push ( @arraycodigos, $codigo ) ;
  5.     }
  6. }
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


¡Ojo!, así me funcionó y desconozco si hay otra forma o si estoy cometiendo un error pero quería pasar un array que venía de una base de datos a un cliente y con dicha configuración me funcionó de un solo paso. Lo que me ayudó fue el use SOAP::Lite +autodispatch=>+trace => [qw(debug)]; ya que ahí me mostró que el array pasaba correctamente… pero solo mostraba el primer elemento.

Gracias a todos
Última edición por explorer el 2011-05-17 10:09 @465, editado 1 vez en total
Razón: Formatear el código con Perltidy y sintaxis Perl
scout
Perlero nuevo
Perlero nuevo
 
Mensajes: 228
Registrado: 2009-10-28 13:50 @618

Publicidad

Re: Soap::lite dando problemas al iniciar cliente

Notapor explorer » 2011-05-17 10:12 @467

Si en una sub {} no se usa return(), el valor de retorno de la subrutina será el de la última sentencia ejecutada en esa subrutina.

El único cambio que veo con respecto a los mensajes anteriores, es que en el cliente ahora sí que lees un array, en lugar de una referencia a un array. Quizás sea eso...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Soap::lite dando problemas al iniciar cliente

Notapor scout » 2011-05-17 10:37 @484

Quería comentarlo...

Recién pasé 4500 valores que salieron de una base y fue muy rápida... estoy contento con Perl...
scout
Perlero nuevo
Perlero nuevo
 
Mensajes: 228
Registrado: 2009-10-28 13:50 @618

Anterior

Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 31 invitados