Hibernate 3 - onde está o dialect?

2 respostas
J

Galera,
estou tentando fazer um "alô mundo hibernate", mas o danado não acha o dialect...
Meu hibernate.cfg.xml é o seguinte:

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD//EN"
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
    <session-factory>
        <!-- properties -->
        <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
        <property name="connection.driver_class">org.gjt.mm.mysql.Driver</property>
        <property name="connection.url">jdbc\:mysql\://localhost/testehiber</property>        
        <property name="connection.username">testehiber</property>
        <property name="connection.password">testehiber</property>   
        
         <!-- mapping files -->
        <mapping resource="Produto.hbm.xml"/>
    </session-factory>
</hibernate-configuration>

A aplicação é a seguinte:

public class InserirProduto
{
    public static void main(String[] args)
    {
        //um produto qualquer
        Produto p = new Produto();
        p.setNome("arroz");
        p.setPreco(1.45);
        p.setQuantidade(100);
        
        //inicialização do hibernate
        Configuration cfg = new Configuration().addClass(Produto.class);
        SessionFactory sf = cfg.buildSessionFactory();
        Session sess = sf.openSession();
        
        //gravação do produto no banco
        Transaction t = sess.beginTransaction();
        sess.save(p);
        t.commit();
        
        //fechamento da sessão
        sess.close();
    }    
}

E a mensagem de erro do netbeans, a seguinte:

org.hibernate.HibernateException: The dialect was not set. Set the property hibernate.dialect.
        at org.hibernate.dialect.Dialect.getDialect(Dialect.java:477)
        at org.hibernate.dialect.Dialect.getDialect(Dialect.java:499)
        at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:51)
        at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:1505)
        at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1053)
        at InserirProduto.main(InserirProduto.java:23)

acontece que o dialect está lá em cima!!!
Já fiz tudo como manda o figurino. Incorporei todos os jars "required" da documentação, criei o bean Produto, o arquivo Produto.hbm.xml, criei as tabelas, iniciei o banco....
Alguém pode dar uma dica do que pode estar errado?
Valeu...

2 Respostas

_fs
<property name="hibernate.dialect">
	net.sf.hibernate.dialect.SQLServerDialect
</property>
J

LIPE:
<property name="hibernate.dialect"> net.sf.hibernate.dialect.SQLServerDialect </property>

Não Lipe, estou usando o hibernate 3, o caminho tem que começar com org. Além disso, o nome da propriedade só começa com hibernate.xxx se for configurado no hibernate.properties. No hibernate.cfg.xml, as propriedades não começam com “hibernate” (pelo menos de acordo com o manual).
Sim, eu tentei assim mesmo a sua idéia e algumas variações dela, mas simplesmente não funciona, continua dando exatamente o mesmo erro.
:frowning:
Alguém mais ajuda???

Criado 6 de abril de 2005
Ultima resposta 10 de abr. de 2005
Respostas 2
Participantes 2