Iterator + DataOutputStream

Pessoal.
Em uma aplicação JME que se comunica com um servlet é possivel jogar o resultado de um Iterator em variaveis, para que a aplicação JME receba?

Por exemplo:
private DataOutputStream os = null;
private DataInputStream in = null;

// na aplicação JME ,tenho os fluxos de saida de dados
os.writeUTF(nome.trim());
os.writeUTF(senha.trim());

// no servlet tenho um Inerator que retorna um consulta com parametros de tabelas diferentes no banco de dados:

List dadosFuncionario = new ArrayList();
while ( rs.next() ) {
Funcionario f = new Funcionario();
a.setnome(rs.getString(nome));
a.setsenha(rs.getString(senha));
a.setempresa(rs.getString(empresa));
a.setcidade(rs.getString(cidade));

Isso esta correto ?

 resultnome = f.getnome();
  resultsenha = f.getsenha();
  resultempresa= f.getempresa();
  resultcidade = f.getcidade();

// enviando a aplicação JME:

 os.writeUTF(resultnome);
 os.writeUTF(resultsenha);
 os.writeUTF(resultempresa);
 os.writeUTF( resultcidade);

// recuperando informações na aplicação JME:

           resultnome = in.readUTF();
            resultsenha = in.readUTF();
            resultempresa= in.readUTF();
            resultcidade = in.readUTF();

Não estou conseguindo deste jeito,alguem tem alguma dica de como recuperar essas informações em um Servlet, após este fazer consulta ao banco de dados.

Observação:cada campo está em uma tabela diferente, tipo:

banco funcionario
tabela func = nome e senha
tabela empresa = empresa
tabela cidade = cidade
Acredito que isso não influêncie pois no select as tabelas estão relacionadas corretamante.

Você tem que gerar uma saida de dados “Pintar os dados,Exibir” para que o J2ME capture esta saida.
Um exemplo seria a saida feita pelo PrintWrite:

    PrintWrite out  = response.getWrite();
    out.print("Seus dados");

É claro que existem outras formas, mas de inicio essa funciona.