Problemas com conexão mysql

5 respostas
W

Estou iniciando com hibernate + jsf + ajax estou fazendo exemplo do blog Java Anywhere do eduardo bregaida so que quando eu vou executar a classe geraBanco ele da seguinte erro :

import org.hibernate.cfg.AnnotationConfiguration;

import org.hibernate.cfg.Configuration;

import org.hibernate.tool.hbm2ddl.SchemaExport;
public class GeraBanco {

public static void main(String[] args) {

Configuration configuration = new AnnotationConfiguration();

configuration.configure();

SchemaExport schemaExport = new SchemaExport(configuration);

schemaExport.create(true, true);

}

}

e as exceções foram as seguintes:

16:28:55,280  INFO Version:15 - Hibernate Annotations 3.2.0.GA

16:28:55,343  INFO Environment:500 - Hibernate 3.2.0

16:28:55,343  INFO Environment:533 - hibernate.properties not found

16:28:55,389  INFO Environment:667 - Bytecode provider name : cglib

16:28:55,530  INFO Environment:584 - using JDK 1.4 java.sql.Timestamp handling

16:28:55,764  INFO Configuration:1350 - configuring from resource: /hibernate.cfg.xml

16:28:55,764  INFO Configuration:1327 - Configuration resource: /hibernate.cfg.xml

16:28:56,749  INFO Configuration:1465 - Configured SessionFactory: null

16:28:56,796  INFO Dialect:141 - Using dialect: org.hibernate.dialect.MySQLDialect

16:28:57,046  INFO AnnotationBinder:387 - Binding entity from annotated class: br.com.caelum.acesso.Acesso

16:28:57,124  INFO EntityBinder:340 - Bind entity br.com.caelum.acesso.Acesso on table Acesso

16:28:57,202  INFO AnnotationBinder:387 - Binding entity from annotated class: br.com.caelum.dados.Dados

16:28:57,202  INFO EntityBinder:340 - Bind entity br.com.caelum.dados.Dados on table Dados

16:28:57,218  INFO AnnotationBinder:387 - Binding entity from annotated class: br.com.caelum.fornecedor.Fornecedor

16:28:57,218  INFO EntityBinder:340 - Bind entity br.com.caelum.fornecedor.Fornecedor on table Fornecedor

16:28:57,218  INFO AnnotationBinder:387 - Binding entity from annotated class: br.com.caelum.contapagar.ContaPagar

16:28:57,218  INFO EntityBinder:340 - Bind entity br.com.caelum.contapagar.ContaPagar on table ContaPagar

16:28:57,780  INFO SchemaExport:154 - Running hbm2ddl schema export

16:28:57,796  INFO SchemaExport:179 - exporting generated schema to database

16:28:57,796  INFO C3P0ConnectionProvider:50 - C3P0 using driver: com.mysql.jdbc.Driver at URL: jdbc:mysql://localhost/teste

16:28:57,796  INFO C3P0ConnectionProvider:51 - Connection properties: {user=root, password=****}

16:28:57,796  INFO C3P0ConnectionProvider:54 - autocommit mode: false

16:29:28,983  WARN BasicResourcePool:1222 - com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@110c31  Acquisition Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new resource, we failed to succeed more than the maximum number of allowed acquisition attempts (30).

16:29:28,999 ERROR SchemaExport:202 - schema export unsuccessful

java.sql.SQLException: Connections could not be acquired from the underlying database!

at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:104)

at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:236)

at com.mchange.v2.c3p0.PoolBackedDataSource.getConnection(PoolBackedDataSource.java:94)

at org.hibernate.connection.C3P0ConnectionProvider.getConnection(C3P0ConnectionProvider.java:35)

at org.hibernate.tool.hbm2ddl.ManagedProviderConnectionHelper.prepare(ManagedProviderConnectionHelper.java:28)

at org.hibernate.tool.hbm2ddl.SchemaExport.execute(SchemaExport.java:180)

at org.hibernate.tool.hbm2ddl.SchemaExport.create(SchemaExport.java:133)

at br.com.caelum.hibernate.gerabanco.GeraBanco.main(GeraBanco.java:19)

Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.

at com.mchange.v2.resourcepool.BasicResourcePool.awaitAcquire(BasicResourcePool.java:970)

at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:208)

at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:232)

 6 more

16:29:29,280  WARN BasicResourcePool:1222 - com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1a68ef9  Acquisition Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new resource, we failed to succeed more than the maximum number of allowed acquisition attempts (30).

hibernate :

org.hibernate.dialect.MySQLDialect jdbc:mysql://localhost/teste com.mysql.jdbc.Driver root root
<property name="hibernate.show_sql">true</property>
	<property name="hibernate.format_sql">true</property>

	<!-- usar C3P0 Pool de conexões-->
	<property name="hibernate.c3p0.min_size">1</property>
	<property name="hibernate.c3p0.max_size">10</property>
	<property name="hibernate.c3p0.maxIdleTime">200</property>
	<property name="hibernate.c3p0.timeout">180</property>
	<property name="hibernate.c3p0.idle_test_period">100</property>
	<property name="hibernate.c3p0.max-statements">50</property>

	<!-- Cache 2 nível-->
	<property name="hibernate.cache.provider_class">
	org.hibernate.cache.EhCacheProvider</property>


	<mapping class="br.com.caelum.acesso.Acesso"/>
	<mapping class="br.com.caelum.dados.Dados"/>
	<mapping class="br.com.caelum.fornecedor.Fornecedor"/>
	<mapping class="br.com.caelum.contapagar.ContaPagar"/>

</session-factory>

e as classes :

/**

  • Login e acesso ao sistema
    */
    package br.com.caelum.acesso;
import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.GenerationType;

import javax.persistence.Id;

import org.hibernate.Session;

import br.com.caelum.acessodao.AcessoDAO;
import br.com.caelum.hibernate.hibernateutil.HibernateUtil;

@Entity
public class Acesso {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
int id;

private String login;

private String senha;

private boolean administrador;

public boolean isAdministrador() {
	return administrador;
}

public void setAdministrador(boolean administrador) {
	this.administrador = administrador;
}

public String getLogin() {
	return login;
}

public void setLogin(String login) {
	this.login = login;
}

public String getSenha() {
	return senha;
}

public void setSenha(String senha) {
	this.senha = senha;
}

public int getId() {
	return id;
}

public void setId(int id) {
	this.id = id;
}

public String logar() {
	Session session = HibernateUtil.openSession();
	AcessoDAO acessoDAO = new AcessoDAO(session);
	return acessoDAO.verificaAutenticacao(this);
}

public void salvar() {
	Session session = HibernateUtil.openSession();
	AcessoDAO acessoDAO = new AcessoDAO(session);
	acessoDAO.salvaUsuario(this);
}

public void deletar() {
	Session session = HibernateUtil.openSession();
	AcessoDAO acessoDAO = new AcessoDAO(session);
	acessoDAO.excluiUsuario(this);
}

}


import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.GenerationType;

import javax.persistence.Id;
@Entity

public class Dados {

@Id

@GeneratedValue(strategy = GenerationType.IDENTITY)

private Long id;
private String nome;

private String telefoneResidencial;

private String telefoneComercial;

private String celular;

private String nextel;

private String email;

private String observacao;



public String getNome() {
	return nome;
}

public void setNome(String nome) {
	this.nome = nome;
}

public Long getId() {
	return id;
}

public void setId(Long id) {
	this.id = id;
}

public String getCelular() {
	return celular;
}

public void setCelular(String celular) {
	this.celular = celular;
}

public String getEmail() {
	return email;
}

public void setEmail(String email) {
	this.email = email;
}

public String getNextel() {
	return nextel;
}

public void setNextel(String nextel) {
	this.nextel = nextel;
}

public String getObservacao() {
	return observacao;
}

public void setObservacao(String observacao) {
	this.observacao = observacao;
}

public String getTelefoneComercial() {
	return telefoneComercial;
}

public void setTelefoneComercial(String telefoneComercial) {
	this.telefoneComercial = telefoneComercial;
}

public String getTelefoneResidencial() {
	return telefoneResidencial;
}

public void setTelefoneResidencial(String telefoneResidencial) {
	this.telefoneResidencial = telefoneResidencial;
}

}

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.Id;
@Entity

public class Fornecedor {

@Id

@GeneratedValue

private Long id;
private String nome;

private String descricao;

public String getDescricao() {
	return descricao;
}

public void setDescricao(String descricao) {
	this.descricao = descricao;
}

public String getNome() {
	return nome;
}

public void setNome(String nome) {
	this.nome = nome;
}

public Long getId() {
	return id;
}

public void setId(Long id) {
	this.id = id;
}

}


import java.util.Calendar;
import java.util.GregorianCalendar;

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.Id;

import javax.persistence.ManyToOne;

import javax.persistence.Temporal;

import javax.persistence.TemporalType;

import br.com.caelum.fornecedor.Fornecedor;

@Entity

public class ContaPagar {

@Id

@GeneratedValue

private long id;
private String descricao;

private Double valor;

@Temporal(TemporalType.DATE)
private Calendar data = new GregorianCalendar();


private boolean pago;

//Sempre para lista -> lê se, muitas contar para 1 fornecedor
@ManyToOne
private Fornecedor fornecedor;

public Calendar getData() {
	return data;
}

public void setData(Calendar data) {
	this.data = data;
}

public String getDescricao() {
	return descricao;
}

public void setDescricao(String descricao) {
	this.descricao = descricao;
}

public Fornecedor getFornecedor() {
	return fornecedor;
}

public void setFornecedor(Fornecedor fornecedor) {
	this.fornecedor = fornecedor;
}

public boolean isPago() {
	return pago;
}

public void setPago(boolean pago) {
	this.pago = pago;
}

public Double getValor() {
	return valor;
}

public void setValor(Double valor) {
	this.valor = valor;
}

}

alguém pode me ajudar URGENTE, espero que opinem!!!
valeu

5 Respostas

Javabuntu

Colega essas questões URGENTES nós deixamos para bombeiros, defesa civil, polícia…etc…LEMBRE-SE isto é um fórum, são todos voluntários…
Antes de postar sua dúvida dê uma formatada no seu código, acesse AQUI depois analisaremos sua dúvida…

Guto_Magalhaes

Veja se tem todos estes jars:

antlr.jar
cglib.jar
asm.jar
asm-attrs.jars
commons-collections.jar
commons-logging.jar
hibernate3.jar
jta.jar
dom4j.jar
log4j.jar

Eduardo_Bregaida

Isso é problemas com os jars, conseguiu resolver? se sim, coloca a solução e marca como resolvido, assim vc pode ajudar outras pessoas, se nao, coloca oq ta dando de errado :smiley:
[]sss

A

Boa tarde,

Não vou questionar nenhum dos colegas, todos tem razão !

Mas voce prestou atenção que na terceira linha do seu printStack tem esse erro

este outro erro

Ou seja, nao esta estabelecendo a conexao, portanto a configuração não está correta do seu arquivo.

Bem, de uma melhor lida no seu artigo e veja as configurações corretas.

Qualquer coisa, posta ai !

Abs

Eduardo_Bregaida

marsola2k:
Boa tarde,

Não vou questionar nenhum dos colegas, todos tem razão !

Mas voce prestou atenção que na terceira linha do seu printStack tem esse erro

este outro erro

Ou seja, nao esta estabelecendo a conexao, portanto a configuração não está correta do seu arquivo.

Bem, de uma melhor lida no seu artigo e veja as configurações corretas.

Qualquer coisa, posta ai !

Abs

Bem observado eu n tinha visto :wink:

Criado 5 de agosto de 2007
Ultima resposta 6 de nov. de 2007
Respostas 5
Participantes 5