Retornando da interface local para a remota

1 resposta
indivito

seguinte galera,

to com problema pq tenho um cliente que atravez da interface remota faz uma chamada a um metodo de uma fachada e esta acessa atravez da interface local o entity CMP que retorna um collection de uma chamada ao findAll()

mas nao to conseguindo passa essa collection.

na facade ta assim:

/**
	 * @throws FinderException
	 * @ejb.interface-method view-type="remote"
	 */
	public Collection listarPessoas() throws FinderException {
		PessoaLocalHome home = getPessoaLocalHome();
		Collection pessoas;
		pessoas = home.findAll();
		Iterator i = pessoas.iterator();
		Pessoa p = (Pessoa)i.next();
		return pessoas;
	}

no meu cliente ta assim:

br.cefet.session.Fachada myBean = getHome().create();
			Collection c = myBean.listarPessoas();
			Iterator i = c.iterator();
			while(i.hasNext())
			{
				Pessoa pe =  (Pessoa)i.next();
				System.out.println("cpf: " + pe.getNome() + "  CPF: " + pe.getCpf());
			}

alguem pode me ajudar em como eu faço isso?

vlw,

1 Resposta

afamorim

Faz o seguinte:

no cmp faz o seguinte teste

/**
 	 * @throws FinderException
 	 * @ejb.interface-method view-type="remote"
 	 */
 	public Collection listarPessoas() throws FinderException {
 		PessoaLocalHome home = getPessoaLocalHome();
 		Collection pessoas;
 		pessoas = home.findAll();
                System.out.println(">>> " pessoas.size());
 		Iterator i = pessoas.iterator();
 		Pessoa p = (Pessoa)i.next();
 		return pessoas;
 	}

assim vc vai saber quantos registros estão vindo na sua coleção.

ele apresenta algum exception quando vc pesquisa?

Criado 22 de julho de 2005
Ultima resposta 25 de jul. de 2005
Respostas 1
Participantes 2