ejbSelect

Pessoal,

No tutorial da sun, só vi exemplos de ejbSelect para o tipo Collection.
É possivel fazer um ejbSelect para retornar somente um valor (int) ?
Fiz alguns testes e não obtive muito sucesso. Estou usando o j2sdkee 1.4, CMP.

a principio, baseando no exemplo do tutorial fiz:

public abstract int ejbSelectLastInidice()throws FinderException;

public int getLastIndice FinderException(){
return ejbSelecLastIndicet();
}

No deploytool.

EJB - QL
select max(p.cidade) from Cidade as p

mas quando tento gerar as sqls (Generate Default SQL) ocorre um erro.

Alguém saberia onde estou errando ou teria outros exemplos de uso do ejbSelect ?

agradeço a atenção…

mindu

Particularmente, não consegui fazer um ejbSelect para retornar um SUM().
Me disseram q o ejbSelect retorna somente CMP.

a forma que consequi fazer é um statment no meu session.
String sql = “”;
sql = “SELECT sum ( i.valor )”;
sql += "FROM Credito c, itemCredito i ";
sql += “WHERE c.id = ? AND c.ano = ?”;
try {
stm4 = db.getConnection().prepareStatement(sql);
}
catch (SQLException e) {
System.out.println( "Problemas com o SQL4 / " + e );
}

Obs: os “?” são os parametros recebidos, e não tem um numero associado. Somente uma ordem.

Pessoal, eu postei umas urls legais aqui

http://www.guj.com.br/forum/viewtopic.php?t=2880#13980

Abraco,

Obrigado Claudio, eu já tinha visto da outra vez.
Só que agora estou usando o j2sdkee 1.4 na qual tem o EJB 2.1 com essas funcionalidades…

Acredito que a assinatura do seu metodo esteja com problema:

public abstract java.lang.Integer ejbSelectLastInidice() throws FinderException;

ou , caso voce queira uma colecao de inteiros, que nao eh o seu caso

public abstract java.util.Collection ejbSelectLastInidice() throws FinderException;

Vamos esperar para ver se com o java 1.5 (J2SE) com seus recursos de autoboxing evite esse erro (int = Integer) e se o generics tambem de um jeito nessa Collection da segunda query.

obrigado tanque…
consegui resolver o problema, alias, os problemas…
Tinha muito mais erros do que eu imaginava…

mindu