Gente sou iniciante em java. Estou tentando fazer a conexão do ECLIPSE com o POSTGRE, só que está dando o seguinte erro:
Não sei o que pode ser, pensei que fosse as áspas duplas, mas ainda continua o mesmo erro.
TRECHO DO CÓDIGO
<%@pagelanguage="java"import="java.sql.*"contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=ISO-8859-1"><title>Insert title here</title></head><body><%try{Class.forName("org.postgresql.Driver");Connectioncon=DriverManager.getConnection("jdbc:postgresql://localhost/Banco","postgres","vick01");Statementst=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);ResultSetrs=st.executeQuery(" select * from \"Emprs\" ");System.out.println("passou");}catch(ClassNotFoundExceptionerroClass){System.out.print("ClassDriveJDBC não foi localizado, erro: "+erroClass);}catch(SQLExceptionerroSQL){System.out.print("Erro de conexão com o banco de dados, erro: "+erroSQL);}%></body></html>
Gente, escrevi essa consulta num arquivo JPS dentro do WEB.INF (como vcs estão vendo). É correto colocar a consulta da query na JSP mesmo??? Ou teria que colocar num arquivo .java, e só chamar ele na página JSP??
Desculpa se minha pergunta é muito boba, mas estou na maior dúvida.
Na query não precisa colocar o nome da tabela entre aspas duplas.
Posta o erro completo (stack trace).
O certo não é deixar essa parte de conexão nas telas JSP, você deve criar uma classe que serve apenas para fazer conexão com o Postgre. Você podia criar uma Servlet que quando vc chamar ela, ela chama usa uma classe por exemplo EmpresaDAO para fazer a conexão com o banco e obter todas as empresas, depois vc pega essas informações e envia via request para uma JSP.
V
vick01
rsakurai, tirei as áspas duplas, mas mesmo tirando as áspas duplas de Emprs, contiua dando erro. Na tela do console aparece o seguinte (não sei onde fica o stack trace que vc falou, por isso coloquei só o que é exibo no console:
<%@pagelanguage="java"import="java.sql.*"contentType="text/html; charset=ISO-8859-1"pageEncoding="ISO-8859-1"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><metahttp-equiv="Content-Type"content="text/html; charset=ISO-8859-1"><title>Insert title here</title></head><body><%try{Class.forName("org.postgresql.Driver");Connectioncon=DriverManager.getConnection("jdbc:postgresql://localhost/Banco","postgres","vick01");Statementst=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);ResultSetrs=st.executeQuery(" select * from Emprs ");System.out.println("passou");}catch(ClassNotFoundExceptionerroClass){System.out.print("ClassDriveJDBC não foi localizado, erro: "+erroClass);}catch(SQLExceptionerroSQL){System.out.print("Erro de conexão com o banco de dados, erro: "+erroSQL);}%></body></html>
rsakurai
O nome da tabela é emprs?
O nome do schema do postgre é Banco?
Você adicionou o driver jdbc no projeto?
V
vick01
rsakurai, eu estava passando o schema errado. Troquei pelo certo e agora funcionou.
Obrigada!!!