Srs
estou recebendo a seguinte mensagem ao fazer lockup em um EJB
java.lang.ClassCastException: javax.naming.Reference cannot be cast to br.com.foxtec.bovespa.impl.Cotacao
at TestUsuario.main(TestUsuario.java:32)
Estou usando o JBOSS 5.1.0 e o ejb é o seguinte :
package br.com.foxtec.bovespa.impl;
import br.com.foxtec.bovespa.ICotacaoRemote;
@Stateless(name="ejb/cotacao")
public class Cotacao implements ICotacaoRemote {
@Resource(name="jdbc/MySQLDB" , mappedName = "java:/MySQLDB")
private DataSource dataSource;
private Connection con;
@PostConstruct
public void initialized() {
try {
con = dataSource.getConnection();
} catch (Exception e) {
System.out.println("Erro ao pegar conexao");
e.printStackTrace();
}
}
...
Interface
[code]package br.com.foxtec.bovespa;
import java.rmi.RemoteException;
import javax.ejb.Remote;
import br.com.foxtec.bovespa.impl.PapelEntity;
@Remote
public interface ICotacaoRemote {
public void lerArquivoTitulosNegociaveisVista() throws RemoteException;
public PapelEntity obterDadosNegociacao(String codigo) throws RemoteException;
}
[/code]
Alguem tem alguma ideia do que pode ser. To perdido, não faço ideia do que mexer.
Para fazer o lockup eu uso
try {
Properties prop = new Properties();
prop.put("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");
prop.put(InitialContext.URL_PKG_PREFIXES, "org.jboss.naming:org.jnp.interfaces");
prop.put(InitialContext.PROVIDER_URL,"jnp://localhost:1099");
Context ctx = new InitialContext(prop);
@SuppressWarnings("unused")
ICotacaoRemote cotacao = (ICotacaoRemote)ctx.lookup("ejb/cotacao/remote");
} catch (Exception exc) {
exc.printStackTrace();
}