Tengo una inquietud que me gustaría me puedan ayudar a solventar. Tengo un Servicio Web basado en Nusoap en el cual funciona bien al momento de realizar una consulta a una base de datos en Oracle para que me devuelva pocos registros, el problema es cuando el número de registros aumenta a n. Pueden ayudarme con información si es motivos de configuración o algún problema con el Servicio Web??
Muchas Gracias por su ayuda.
Dejo el código del Cliente.
Código PHP:
   
<?php
 
require_once('nusoap.php');
$wsdl="http://localhost/ws/SERVER.php?wsdl"; //url del webservice que invocaremos
$client=new nusoap_client($wsdl,'wsdl'); //instanciando un nuevo objeto cliente para consumir el webservice  
 
 
$estudiante = $client->call('ListarEstudiante'); //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; 
    } 
} 
echo "<div id='apDiv1' align='left'>
 
<table border='1'><tr>";
    echo"<td>Id Estudiante</td>
            <td>Cédula</td>
            <td>Nombre</td>
            <td>Apellido</td>
            <td>Universidad</td>            
            <td>Departamento</td>
            <td>Cod Pais</td>
            <td>Email</td>
            <td>Direccion</td>
            <td>Telefono</td>
            <td>Prefijo</td>
            
    
    </tr>";
if(is_array($estudiante)){ //si hay valores en el array
 
 
    for($i=0;$i<count($estudiante);$i++){    
        
        $id_estudiante=$estudiante[$i]['Id_Estudiante'];
        $cedula=$estudiante[$i]['Cedula'];
        $nombre=$estudiante[$i]['Nombre'];
        $apellido=$estudiante[$i]['Apellido'];
        $universidad=$estudiante[$i]['Universidad'];
        $departamento=$estudiante[$i]['Departamento'];
        $codpais=$estudiante[$i]['CodPais'];
        $email=$estudiante[$i]['Email'];
        $direccion=$estudiante[$i]['Direccion'];
        $telefono=$estudiante[$i]['Telefono'];
        $prefijo= $estudiante[$i]['Prefijo'];
            
        echo"<tr >";    
        echo '<td>'.$id_estudiante.
        '</td><td>'.$cedula.
        '</td><td>'.$nombre.
        '</td><td>'.$apellido.
        '</td><td>'.$universidad.
        '</td><td>'.$departamento.
        '</td><td>'.$codpais.
        '</td><td>'.$email.
        '</td><td>'.$direccion.
        '</td><td>'.$telefono.
        '</td><td>'.$prefijo.
        '</td></tr> ';        
        
        }
}else{
    echo 'No hay estudiantes';
}
 
echo"</table></div>";
?>    Código PHP:
   require_once('../nusoap/lib/nusoap.php');
 
$server = new soap_server;
 
$ns="http://localhost/ws"; // espacio de nombres; Sitio donde estara alojado el web service
$server->configurewsdl('WEB SERVICE'); //nombre del web service
$server->wsdl->schematargetnamespace=$ns;
 
 
$server->wsdl->addComplexType(
    'ArregloEstudiante',             // Nombre
    'complexType',                     // Tipo de Clase
    'array',                         // Tipo de PHP
    '',                             // definición del tipo secuencia(all|sequence|choice)
    'SOAP-ENC:Array',                 // Restricted Base
    array(),
    array(
        array('ref' => 'SOAP-ENC:arrayType', 'wsdl:arrayType' => 'tns:Estudiante[]') // Atributos
    ),
    'tns:Estudiante'
);
 
$server->wsdl->addComplexType('Estudiante', 'complexType', 'struct', 'all', '',
    array(
        'Id_Estudiante'=> array('name' => 'Id_Estudiante','type' => 'xsd:string'),
        'Cedula'    => array('name' => 'Cedula',    'type' => 'xsd:string'),
        'Nombre'    => array('name' => 'Nombre',    'type' => 'xsd:string'),
        'Apellido'=> array('name' => 'Apellido','type' => 'xsd:string'),
        'Universidad'    => array('name' => 'Universidad',    'type' => 'xsd:string'),
        'Departamento'    => array('name' => 'Departamento',    'type' => 'xsd:string'),
        'CodPais'=> array('name' => 'CodPais','type' => 'xsd:string'),
        'Email'    => array('name' => 'Email',    'type' => 'xsd:string'),
        'Direccion'    => array('name' => 'Direccion',    'type' => 'xsd:string'),
        'Telefono'=> array('name' => 'Telefono','type' => 'xsd:string'),
        'Prefijo'=> array('name' => 'Prefijo','type' => 'xsd:string'),
        
 
        
    )
);
 
/*METODO DEL WEB SERVICE*/
function ListarEstudiante($estado){
//aqui hago la consulta a la base
            $i = 0;
            $j=1;
while ($j <= 5) {
  
  
  
                $toc[$i]['Id_Estudiante'] = $j;
                $toc[$i]['Cedula'] = $j;
                $toc[$i]['Nombre'] = $j;
                $toc[$i]['Apellido'] = $j;
                $toc[$i]['Universidad'] = $j;
                $toc[$i]['Departamento'] = $j;
                $toc[$i]['CodPais'] = $j;
                $toc[$i]['Email'] = $j;
                $toc[$i]['Direccion'] = $j;
                $toc[$i]['Telefono'] = $j;
                $toc[$i]['Prefijo'] = $j;
 
$i++;    
$j++;            
}
            return $toc;
    
}
    
 
/************ REGISTRANDO EL METODO **************/
$server->register(
    'ListarEstudiante',                           // Nombre del Metodo
    array('estado' => 'xsd:string' ),           // Parametros de Entrada
    array('return' => 'tns:ArregloEstudiante')   //Datos de Salida
);
 
 
/******PROCESA LA SOLICITUD Y DEVUELVE LA RESPUESTA*******/
$input = (isset($HTTP_RAW_POST_DATA)) ? $HTTP_RAW_POST_DATA : implode("\r\n", file('php://input'));
$server->service($input);
exit; 
    
 
 

