Pessoal comecei a estudar hibernate atraves da apostila do caelum e estou tento algumas dificuldades logo no primeiro exemplo, criei a pasta lib como pede e joguei todos os jars dos hibernate-distribution-3.3.2.GA e hibernate-annotations-3.4.0.GA depois criei o arquivo hibernate.properties e depois as classes Produto.java e GeraTabela.java mais está dando esse erro.
Se alguem puder me ajudar eu agradeço.
22/07/2009 16:12:40 org.hibernate.cfg.annotations.Version <clinit>
INFO: Hibernate Annotations 3.4.0.GA
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.Environment).
log4j:WARN Please initialize the log4j system properly.
22/07/2009 16:12:40 org.hibernate.annotations.common.Version <clinit>
INFO: Hibernate Commons Annotations 3.1.0.GA
22/07/2009 16:12:40 org.hibernate.cfg.AnnotationConfiguration secondPassCompile
INFO: Hibernate Validator not found: ignoring
Essa é minha classe que cria a conexão mais a apostila não falou nada ainda da classe de conexão nem da minha classe Dao.
package br.com.caelum.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import javax.swing.JOptionPane;
public class ConnectionFactory {
public Connection conexao;
String usuario;
String senha;
String url;
public ConnectionFactory() {
// inicialização das variaveis de instancia
usuario = "Sysdba";
senha = "masterkey";
url = "127.0.0.1/3051:C:/workspace/struts-teste/jdbc/TESTE.FDB";
try {
// inicializa o driver de conexão do firebird, levanta o driver na
// maquina virtual que se encontra na jaybird
Class.forName("org.firebirdsql.jdbc.FBDriver");
System.out.println("Conectando ao banco");
} catch (ClassNotFoundException ex) {
JOptionPane.showMessageDialog(null, ex.getMessage(),
"Erro de Conexão BEM AQUI NÃO TA VENDO",
JOptionPane.ERROR_MESSAGE);
}
try {
// gerenciador de drive para manipular o driver de conexão
conexao = DriverManager.getConnection("jdbc:firebirdsql:" + url,
usuario, senha);
System.out.println("Conexão Realizada com Sucesso");
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, ex.getMessage(),
"Erro de Conexão", JOptionPane.ERROR_MESSAGE);
}
}
public static void main(String[] args) {
ConnectionFactory obj = new ConnectionFactory();
}
}
não consegui entender se o que você postou é um erro realmente, ali só deu pra ver INFO’s e WARN’s, que não são causa de uma aplicação não rodar;
mas de qualquer forma algumas dicas:
porta padrão do firebird: 3050 (vefirica se tá certo no seu SO)
dependencias do hibernate: na página de download do hibernate tem uma tabela de compatibilidade entre as dependencias, vê se está tudo certinho
O que eu fiz, e pra mim é o ideal é que deixe de lado o que vc tem em jdbc e faça do zero com hibernate. Acho que você irá ganhar muito (em aprendizado) visualizando o “de-para” entre as duas coisas…
Pessoal foi o que eu fiz seguindo a apostila do caelum eu fiz o GeraTabela e o Produto.java e na apostila diz que vai gerar uma tabela com os dados e no meu não gerou e deu so o Warn e o INFO.
package br.com.caelum.hibernate;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.tool.hbm2ddl.SchemaExport;
public class GeraTabelas {
public static void main(String[] args){
//cria uma configuração para para a classe produto
AnnotationConfiguration cfg = new AnnotationConfiguration();
// Adiciona a classe Produto
cfg.addAnnotatedClass(Produto.class);
//cfg.configure();
new SchemaExport(cfg).create(true, false);
}
}
package br.com.caelum.hibernate;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import org.hibernate.annotations.Entity;
@Entity
public class Produto {
@Id
@GeneratedValue
private Long id;
private String nome;
private String descricao;
private Double preco;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public Double getPreco() {
return preco;
}
public void setPreco(Double preco) {
this.preco = preco;
}
}
Eu colocei todos os jars que estão dentro das pasta dos hibernates hibernate-annotations-3.4.0.GA e hibernate-distribution-3.3.2.GA. No classpath não adicionei nada, onde adiciono e o que no classpath?
Cara olha só vc misturou JDBC com Hibernate, faz assim tenta seguir o exemplo em JDBC e procura saber como ele funciona por trás da aplicação, depois vc faz o mesmo exemplo usando Hibernate, que ai vc vai ver como as coisas ficam mais fácies, e o aprendizando sobre o erros é mais apurado. Por que só fazer como está na apostila não vai te ensinar de verdade, por que o diferencial é saber como rodam as coisa internamente ai vc é o “cara”. Valew.
Segue a imagem de todos os jars que foram adicionados.
Iron valeu pela dica mais só confundi um pouco a pergunta, pois seu como funciona o JDBC pois fazia aplicativos para desktop, agora estou passando para internet já vi um pouco de struts agora estou vendo como funciona hibernate.