Não acessa a Tabela - JSP

5 respostas
W

Prezados, estou tentando seguir exemplo de um livro (Tudo sobre a JSP com NetBenas…) porem a aplicação não funciona apresentando erro:

exception

javax.servlet.ServletException: javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: “java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/bdjsp?useUnicode=true”
root cause

javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: “java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/bdjsp?useUnicode=true”


o Banco de Dados é o MySQL

Criado Banco bdjsp tabela Titulo com dois itens: codTitulo PK, desTitulo.

Em web-inf adicionei pasta jspf e foi criado um JSP acesso.jsf com o seguinte codigo:

<%<a class="mention" href="/u/page">@page</a> contentType=“text/html; charset=iso-8859-1 language=java%>

<%@taglib uri=<a href="http://java.sun.com/jsp/jstl/sql">http://java.sun.com/jsp/jstl/sql</a>’ prefix=‘sql’ %>

<%@taglib uri=<a href="http://java.sun.com/jsp/jstl/core">http://java.sun.com/jsp/jstl/core</a>’ prefix=‘c’ %>

<sql:setDataSource var=“con”

driver=“com.mysql.jdbc.Driver”

url=“jdbc:mysql://localhost:3306/bdjsp?useUnicode=true”

user=“root”

password=“root”

/>

Em paginas web sisIETitulo.jsp o codigo:

<%@include file=“WEB-INF/Jspf/acesso.jspf” %>
<%@include file=“WEB-INF/Jspf/acesso.jspf” %>

select max(codTitulo) from titulo

Inclusao de Títulos

Títulos " readonly>
Descrição

select codTitulo, desTitulo from Titulo

Título(s) já cadastrado(s)

<tr bgcolor="#00B0B0">
Título Descrição Manutenção
"> Alteração    ;" style='cursor: hand;' src='image/excluir.gif' border='0' alt='Eliminar'>



Toda a ajuda será bem vinda

Contando com todos

Marcelo Nogueira.

5 Respostas

M

Amigo, ta faltando biblioteca no seu projeto. Os arquivos .JAR
De uma olhada no tutorial que voce esta seguindo, veja as bibliotecas que ele exige.
Possivelmente, se estiver usando mysql, falta o driver. Baixe o J-Connector do site http://dev.mysql.com/downloads/

Sem querer me intrometer (mas ja intrometendo), voce conhece ou ja ouviu falar de MVC?

Espero que ajude.

Att,

Lucas Israel

W

Lucas, já havia vinculado a biblioteca ao projeto, por via das duvidas baixei-a novamente porem o erro persiste.

Já no caso da sua duvida, nao poderei ti ajudar, estou em fase de aprendizado.

abs

Marcelo Nogueira

M

Boa Noite, Marcelo.
Tente trocar sua URL de conexao pelo seguinte:

url="jdbc:mysql://localhost/bdjsp"

Teste ai e me avise.

Att,

Lucas Israel

W

Lucas, o problema persiste

Abs

A

faça um teste com o jar para ver se realmente ele pode ser o problema, crie um aplicativo simples utilizando o mesmo e veja se esse é o problema:

Abra a conexão:
package conexoes;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class AbreConexao {
	
	public static Connection getConnection() throws SQLException{
		try{
			Class.forName("com.mysql.jdbc.Driver");
			return DriverManager.getConnection("jdbc:mysql://localhost:3306/bdjsp", "root", "root");
		} catch (ClassNotFoundException e){
			throw new SQLException (e.getMessage());
		}
	}

}
cria o bean pra chamar os campos:
package bean;

public class titulos {
	
	private int codTitulo;
	private String desTitulo;
	
	public int getCodTitulo() {
		return codTitulo;
	}
	public void setCodTitulo(int codTitulo) {
		this.codTitulo = codTitulo;
	}
	public String getDesTitulo() {
		return desTitulo;
	}
	public void setDesTitulo(String desTitulo) {
		this.desTitulo = desTitulo;
	}

}
adiciona na mão mesmo alguns dados no bd pra gente chamar os dados e ver se o conector está funcionando:
package dao;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import bean.funcionarios;
import bean.reservas;
import conexoes.AbreConexao;

public class operacoes {

	private Connection con;

	public operacoes() throws SQLException{
		this.con = AbreConexao.getConnection();
	}

	public List<titulos> getLista() throws SQLException{
		PreparedStatement stmt = this.con.prepareStatement("select * from titulo");
		ResultSet rs = stmt.executeQuery();
		
		List<titulos> lista = new ArrayList<titulos>();
		
		while(rs.next()){
			titulos t = new titulos();
			t.setCodTitulo(rs.getInt("codTitulo"));	
			t.setDesTitulo(rs.getString("desTitulo"));	
			
			lista.add(t);			
		}
		
		rs.close();
		stmt.close();
		
		return lista;
	}
}
e o jsp pra chamar os dados:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ page import="dao.*, bean.*, java.util.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%

operacoes dao = new operacoes();
List<titulos> listaTit = dao.getLista();

for(reservas t : listaTit){
%>
<%=t.getCodTitulo %><br/>
<%=t.getDesTitulo %>
<br/><br/>
<%
}
%>
</body>
</html>

se isso n funcionar eh pq realmente o jar é o problema, caso funcione, então o erro é na chamada do db é na chamada do unicode dele, ele não deve estar reconhecendo

**os imports são se um projeto reaproveitado meu, não repare nele e nem é necessário importar tudo aquilo, somente o java.sql.* e os pacotes dao e abreconexao

Criado 31 de janeiro de 2010
Ultima resposta 1 de fev. de 2010
Respostas 5
Participantes 3