Estou com um probleminha aqui, tenho um DataSource configurado no Tomcat, configurei tudo pelo admin, e já dei uma olhada no web.xml e server.xml me parece tudo correto.
Tenho também um classe “HelperBD” que eu criei pra controlar as operações com o Banco de Dados, o construtor desta classe é o seguinte:
public HelperBD() throws Exception {
try {
InitialContext ic = new InitialContext();
Context envCtx = (Context)ic.lookup("java:comp/env");
DataSource ds = (DataSource)envCtx.lookup("jdbc/PoliciaBD");
con = ds.getConnection();
}
catch (Exception ex) {
throw new Exception("Não foi possível estabelecer uma conexão com o BD: " + ex.getMessage());
}
}
A problema é que quando chamo essa classe recebo o seguinte erro:
Name jdbc is not bound in this Context
Tenho certeza que o procedimento esta correto, mas parece que o JNDI não esta registrando o nome, ou não esta encontrando.
OBS: Já troquei o SGBD e o Container Servlet e o erro perssiste em todos
cara, desculpa fazer vc pensar q essa era uma msg para te ajudar, mas é só paga dizer q estou exatamente com o mesmo problema, exatamente mesmo, mesma menssagem de erro. caso vc consiga me envie um email, vou estar pesquisando tb, qualquer coisa te falo.
oq tava de errado comigo era apenas o drive
que eu tinha pra conexão com o banco de dados
que não estava funcionando
e por isso tudo q eu fazia de operação no banco de dados
InitialContext ic = new InitialContext();
DataSource dataSource = (DataSource) ic.lookup("java:comp/env/jdbc/StrutsDemoDS");
no meu caso , quando vou tentar obter a conexao (dataSource.getConnection()). o tom cat congela (isso mesmo, fica parado, não faz nada…) e não dá exception nenhuma… estou usando uma ponte odbc com sql server… algum problema qto a isso?