Problema com Hibernate/JPA

Gente to com um problema aqui com um Hello World com o hibernate/jpa n sei se é incompatibilidade to usando essa
hibernate-annotations-3.3.0.GA
hibernate-entitymanager-3.3.2.GA
hibernate-3.2

e quando tento execultar minha aplicação da esse erro

log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" java.lang.NoSuchMethodError: org.hibernate.cfg.AnnotationConfiguration.addProperties(Ljava/util/Properties;)Lorg/hibernate/cfg/AnnotationConfiguration;
        at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:756)
        at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:191)
        at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:253)
        at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:125)
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:51)
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:33)
        at main.hibernate.GenerateDataBase.main(GenerateDataBase.java:14)

erro acontece quando execulta essa linha

EntityManagerFactory emf = Persistence.createEntityManagerFactory("hibernate");
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="1.0">
        <persistence-unit name="hibernate">
          <properties>
            <property name="hibernate.hbm2ddl.auto" value="create"/>
            <property name="hibernate.query.substitutions" value="true"/>

            <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
            <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/hibernate"/>
            <property name="hibernate.connection.username" value="root"/>
            <property name="hibernate.connection.password" value="senha"/>
            <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLMDialect"/>
          </properties>
        </persistence-unit>
</persistence>

OBS: adicionei todos jar´s ao meu classpath
THANKS!!!

Parece mesmo incompatibilidade.

Tente colocar os seguintes arquivos (compatíveis com a sua versão):

hibernate3.jar
hibernate-annotations.jar
hibernate-commons-annotations.jar
hibernate-entitymanager.jar
hibernate-validator.jar

flws

esse erro ocorre pq não foi encontrada uma classe ou uma classe dependente

vc tem que adicionar os jars necessários

ou então atualizar os jars já existentes

Certo, mas me tirem uma duvida eu uso o netbeans, la na pasta ext/lib tem um monte de jar e no meu projeto tambem adicionei os jar la!
aonde esta o problema de jar desatualizado na minha jre/ext/lib da pasta java ou no jar adicionado do meu projeto? obrigada mais uma vez

O jar desatualizado neste caso, SEMPRE fica na lib do projeto.

Qual versao vcs usam tambem pelamordedeu ajudem-me

gente eu to perdida n sei se resolvido o problema mas agora deu isso

Exception in thread "main" javax.persistence.PersistenceException: org.hibernate.HibernateException: Dialect class not found: org.hibernate.dialect.MySQLMDialect
        at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:698)
        at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:121)
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLMDialect"/>

Se for MySQL 5 pode usar org.hibernate.dialect.MySQL5Dialect que esta no jar hibernate-core.jar ou hibernate3.jar…

Vc tem o jar do mysql connector na sua lib?

Na verdade me enganei sobre qual classe estava faltando… Quando falei conector é o driver do banco, ehehe.

O erro é porque a classe que voce esta usando (…MySQLDialect) nao esta sendo encontrada no seu projeto.

Tentei usar a que citei no post anterior.

Aconselho não tentar configurar na mão, não vai ganhar nada de valor com isso ^^

use IDE Netbeans, crie um projeto, depois va em

Arquivo > Novo Arquivo > Hibernate > HibernateUtils.java

depois

Arquivo > Novo Arquivo > Hibernate > Arquivo de configuração do Hibernate … clique em next, ate chegar a "Selecione fonte de dados" escolha Nova Conexão com Banco de Dados … em name escolha seu banco, no meu caso é o "MySQL (Connector/J Driver)" o host, que no meu caso é "localhost", na porta não precisa botar nada, a não ser q seu servidor não esteja na porta padrão… Banco de dados = "seuSquemaDeDB" Nome de Usuario = "seuUsuario" Senha = "suaSenha", clica em Lembrar Senha … ai clica em OK…

pronto seu banco vai estar pronto pra usar com hibernate, e tudo configurado, e as bibliotecas ja integradas

Não vai ganahar nada de valor mesmo…

vai ganhar conhecimento :wink:

[quote=n3too]Não vai ganahar nada de valor mesmo…

vai ganhar conhecimento :wink: [/quote]

conhecer q versão é compativel com q versão ? ficar horas, tentando configurar ate dar certo ?? … não ha necessidade disso… é o mesmo caso… se existe o sitema de windows (não to falando do sistema operacional, e sim da funcionalidade q se não me engano foi inventada pelo MAC OS), voltando se existe o sistema de Windows pra que usar linha de comando ??

so é necessario recorrer a linha de comando quando o sistema mais amigável não funciona corretamente … sair no DOS fazendo MKDIR, copy … etc etc, ou comandos em qualquer outro sistema é perder tempo, com algo desnecessario…

c a IDE traz a facilidade, c configura tudo pra vc, e se realmente seu objetivo não é aprende o Hibernate 100% e sim usa-lo (onde falo que aprender 100% é ler os SRC, e ver como foi implementado tudo que há nele hoje), afinal ele é uma ferramenta, não vejo motivos de perder tempo com isso…

e se mesmo assim, vc quiser saber como é uma configuração 100% correta, depois é so ele ir nos diretorios e ler o q a IDE fez… desnecessario esse conhecimento da conf, concentre-se em saber as funcionalidades que o hibernate pode te proporcionar, e não em como configurar pra sua aplicação funcionar com ele

Joia pessoal vou tentar aqui ve o que eu consigo muito obrigado pela ajuda qualquer problema eu pertubo vcs mais um poquinhu brigadinhu!

Lavieri e se eu fizer desta forma ainda tenho que adicionar os jars?

o netbeans ja adciona os JARs… ele cria a estrutura toda pronta…

e se quiser distribuir depois, ou seja, executar como um aplicativo… tem la um botão… “Limpar e Construir”, que poem dentro de uma pasta do seu projeto chamada de “dist” um .jar com suas classes, e uma pasta “lib” conténdo todas as bibliotecas que seu projeto usa…

respondendo novamente… não vai ter q adcionar nem um jar não ^^

java.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: Uncompilable source code - package javax.persistence does not exist
        at main.hibernate.GenerateDataBase.<clinit>(GenerateDataBase.java:4)
Could not find the main class: main.hibernate.GenerateDataBase.  Program will exit.
Exception in thread "main" 
Exception in thread "main" Java Result: 1
package main.hibernate;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

public class GenerateDataBase {
    public static void main(String[] args){
       EntityManagerFactory emf = Persistence.createEntityManagerFactory("hibernate");
       EntityManager em = emf.createEntityManager();

       emf.close();
       em.close();
    }
}

este problema seu ai, ocorre pq não achou os pacotes, não estão adcioandos…

vc fez o q eu te falei ?? esse erro foi no NetBeans ? depois de seguir os passos q te falei ali ?

Entao, eu fis o processo que vc falo e o codigo n compilava, na classe Hibernate.java que no caso é a classe que fis o processo que vc me falou ele pg se eu quero criar a classe SessionFactory e AnnotationConfiguration(), pelo jeito ele n encontra esses metodos

Ai adicionei o jar na mao ai ele compilo mas gero aquele erro