Problemas ao acessar base de dados

Criei uma página jsp que inclui e mosra os dados em um bando de dados no mysql. Quando dou o select dá um erro dizando que meu driver não é adequado.
Estou usando o driver: mysql-connector-java-3.0.8-stable-bin Que está no /web-inf/lib e no tomcat_home/common/lib. O erro é:
No suitable driver
precisa criar um arquivo web.xml; com alguma configuração?
O código é o seguindo:

<%
Class.forName("com.mysql.jdbc.Driver").newInstance(); 
Connection con = DriverManager.getConnection("jdbc:mysql:127.0.0.1:3306/bdjsp","root","");
Statement stm = con.createStatement();
%>

No Suitable Driver = Náo é um driver apropriado.

tavez esta faltando vc colocar o jar do seu driver no classpath, ou tente pegar o J/Connector que fica na própia pagina do fabricante clicando: http://www.mysql.com/downloads/api-jdbc-stable.html.

Até mais,
Leonardo Massardi.

da ultima vez que baixei o driver do mysql ele vinha em um arquivo ele vinha compactado em um zip ou tar.gz

Vc deve descompactar e copiar o arquivo arquivo mysql-connector-java-3.0.8-stable-bin.jar para o diretorio $CATALINA_HOME/commons/lib.

Dica: Evite fazer conexões a toda vez que houver uma solicitação do JSP/Servlet, utilize um Pool de Conexões. No tomcat já vem um. Para configurá-lo altere o arquivo $CATALINA_HOME/conf/server.xml adicionando as suas configurações. Segue abaixo um exemplo de Conexão com o Pool

<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true"> ... <DefaultContext> <Resource name="jdbc/StrutsDemoDS" auth="Container" type="javax.sql.DataSource" scope="Shareable"/> <ResourceParams name="jdbc/StrutsDemoDS"> <parameter><name>factory</name><value>org.apache.commons.dbcp.BasicDataSourceFactory</value></parameter> <parameter><name>driverClassName</name><value>com.mysql.jdbc.Driver</value></parameter> <parameter><name>url</name><value>jdbc:mysql://localhost/strutsdemo</value></parameter> <parameter><name>username</name><value>root</value></parameter> <parameter><name>password</name><value>root</value></parameter> <parameter><name>maxActive</name><value>20</value></parameter> <parameter><name>maxIdle</name><value>10</value></parameter> <parameter><name>maxWait</name><value>100</value></parameter> </ResourceParams> </DefaultContext> ... </Host>

Vai aí um exemplo de como obter uma conexão do banco e carregar os registros em uma coleção. Esta coleção deverá ser setada na sessao do usuário(atraves de uma servlet que chama esta classe para retornar uma colecao de usuarios), e no JSP vc pegar este objeto, navegar na coleção e exibi-los no JSP, ou seja, nada de acesso a banco via JSP.

Estamos entendidos?

[code]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 javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

public class DBDemo {

private static DataSource dataSource = null;

public Connection getConnection() throws NamingException, SQLException {
	Connection conn = null;
	if (dataSource == null) {
		try {
			InitialContext ic = new InitialContext();
			dataSource = (DataSource) ic.lookup("java:comp/env/jdbc/StrutsDemoDS");
		} catch (NamingException ex) {
			System.out.println(ex.getMessage());
			throw ex;
		}
	}
	if (dataSource != null) {
		conn = dataSource.getConnection();
	}
	return conn;
}

protected void closeConnection(Connection conn, PreparedStatement stmt, ResultSet rs) {
	if (rs != null) try { rs.close(); } catch (SQLException e) {}
	if (stmt != null) try { stmt.close(); } catch (SQLException e) {}
	if (conn != null) try { conn.close(); } catch (SQLException e) {}
}

public List getUsers() throws SQLException {
	Connection conn = null;
	PreparedStatement stmt = null;
	ResultSet rs = null;
	List users  = new ArrayList();
	try {
		conn = getConnection();
		stmt = conn.prepareStatement("select * from usuario");
		rs = stmt.executeQuery();
		while (rs.next()) {
			UserData user = new UserData();
			user.setIdUsuario(rs.getInt("id_usuario"));
			user.setNome(rs.getString("nome"));
			user.setLogin(rs.getString("login"));
			user.setSenha(rs.getString("senha"));
			users.add(user);
		}
	}
	catch (SQLException e) {
		throw e;
	}
	finally {
		closeConnection(conn, stmt, rs);
	}
	return users;
}

}[/code]

[]s, Welington B. Souza

Também concordo que acesso por jsp não é muito bom. É bem melhor usar bens pra isso, mas o web.xml está tirando meu sono ha semanas e não consigo configura-lo corretamente, então vi que já estáva ficando cansativo no forum e desisti de usá-los por enquanto. Por isso resolvi desenvolver tudo em jsp. Meu problema é o web.xml.

Dê uma olhada neste material http://jacques.dsc.ufpb.br/cursos/j2ee/html.zip

que ele vai te responder um monte de dúvidas.

[]s, Welington B. Souza

Cara, o link tá com pau! Está apontando pro lugar errado. :frowning:

Não tá não, acabei de baixar o arquivo aqui. :wink:

Verdade, está funcionando sim! :oops: Valeu pela força! :smiley:

:smiley: VAleu pela força galera! :smiley:
Estou enviando este post só pra dar um feedback pro pessaoal, pois consegui acessar a base de dadds! Quem quiser saber como é só postar uma mensagem que eu digo! Até mais! :stuck_out_tongue:

Finalmente! :smiley:

Parabéns pela persistência.

Mas lembre-se, procure se embasar através da leitura de material técnico primeiro antes de tentar implementar algum software, assim vc conseguirá melhores resultados.

[]s, Welington B. Souza