No se por que, pero esto no me resulta en una función XAJAX. Ante esta situación, se me ocurrió crear otra pagina llamada test.php bien sencilla. Inicio sesion, y hago el ciclo foreach, y si me funciona. Veo todos los valores ingresados en la otra página.
 
Es decir, el array de objetos por $_SESSION['obj'] funciona. 
En la función xajax ingreso los datos y si funciona
Desde una página diferente, reviso el array de objetos que estan en sesion a modo de prueba y si funcionan
Desde la funcion xajax NO puedo acceder a los métodos del objeto 
Pero lo más extraño de todo, es que en el la funcion xajax coloco este codigo, si funciona: 
 Código PHP:
    $persona = new personas($rut,$nombre,$apellido,$telefono,$email);
$_SESSION['obj'] = $persona;
$i=0;
foreach ($_SESSION['obj'] as $objeto){    
        $cod .= $i . "-";
                $i++;
                }
//Estas dos lineas es el equivalente a decir echo $cod;
$respuesta->addAssign("capa","innerHTML",$cod);
return $respuesta; 
    
  Este codigo en la funcion xajax no funciona 
 Código PHP:
    $persona = new personas($rut,$nombre,$apellido,$telefono,$email);
$_SESSION['obj'] = $persona;
foreach ($_SESSION['obj'] as $objeto){    
        $tabla_seleccionados = $objeto->getEncargados();
                } 
    
  Esta funcion en test.php si funciona 
 Código PHP:
    session_start();
foreach ($_SESSION['obj'] as $objeto){    
        $tabla_seleccionados = $objeto->getEncargados();
                } 
    
  Alguna idea??