Hibernate offline

12 respostas
E

tenho um projeto com swing / hibernate / hsqlbd
quando minha conexão com a net está online funciona
perfeitamente, quando desativo minha conexão de rede o
hibernate não consegue ler os mapeamentos. porque ?

12 Respostas

webdouglas

poderia nos passar como esta o seu hibernate.cfg ?
ou mais alguma informação que pode ser mais util ?

E

da uma olhada:

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

<hibernate-configuration>
  <session-factory>

<property name="hibernate.connection.driver_class">org.hsqldb.jdbcDriver</property>
<property name="hibernate.connection.url">jdbc:hsqldb:file:c:/hsqlbd2/captacao</property>
<property name="hibernate.connection.username">sa</property>
<property name="hibernate.connection.password"></property>
<property name="hibernate.dialect">org.hibernate.dialect.HSQLDialect</property>
<property name="connection.pool_size">1</property>

<mapping resource="beans/Medicamentos.hbm.xml"/>
<mapping resource="beans/Medicos.hbm.xml"/>
<mapping resource="beans/Senha.hbm.xml"/>
      
  </session-factory>
</hibernate-configuration>

o erro:

Initial SessionFactory creation failed.org.hibernate.InvalidMappingException: Could not parse mapping document from resource beans/Medicamentos.hbm.xml


a conexão:

package util;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

public class HibernateUtil {

    private static SessionFactory FabricaSessoes;
    static
    {
        try {
             FabricaSessoes = new Configuration().configure().buildSessionFactory();
        }
        catch (Exception e)
        {
            System.err.println("Initial SessionFactory creation failed." + e);
           FabricaSessoes = null;
        }
    }
    public static Session getSessao() {
        return FabricaSessoes.openSession();
    }
}
webdouglas

humm muito estranho… pode me passar o “Medicamentos.hbm.xml”, inicialmente eu não faço idéia doq pode ser…
mas pretendo ajudar. :smiley:

E

sou iniciante e este e apenas um projeto de teste para um maior que prentendo fazer,
se quiser dar uma olhada no projeto está em:

http://www.4shared.com/file/_467SGbg/Prj_teste.html

tem o prj do netbeans as libs e o banco, e a pasta dist compilada.
se quiser testar executa o jar da pasta dist com a conexão desabiitada
e depois com a conexão normal, so roda online.

agradeço a atenção desde já.

romarcio

edulemos:
sou iniciante e este e apenas um projeto de teste para um maior que prentendo fazer,
se quiser dar uma olhada no projeto está em:

http://www.4shared.com/file/_467SGbg/Prj_teste.html

tem o prj do netbeans as libs e o banco, e a pasta dist compilada.
se quiser testar executa o jar da pasta dist com a conexão desabiitada
e depois com a conexão normal, so roda online.

agradeço a atenção desde já.

Testei seu projeto com a conexão habilitada e não houve problema algum.

Abri seu projeto e notei que nos mapeamentos tem um probleminha, um espaço em branco entre EN" " e http://…, tira esse espaço

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//
EN" " http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

deixa assim:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//
EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
E

corrigi o espaço, mais continua dando erro quanto tento rodar
com a conexão offline, quando ta online funciona direito, minha
duvida e : o hibernate so funciona coma conexão online ???

romarcio

Sobre se o Hibernate precisa de acesso a internet para funcionar, a resposta é não:


Note que o Hibernate DTD é muito sofisticado. Você pode usar isso para auto-conclusão no
mapeamento XML dos elementos e funções no seu editor ou IDE. Você também pode abrir
o arquivo DTD no seu editor. Esta é a maneira mais fácil de ter uma visão geral de todos os
elementos e funções e dos padrões, como também alguns comentários. Note que o Hibernate
não irá carregar o arquivo DTD da web, e sim da classpath da aplicação. O arquivo DTD está
incluído no hibernate-core.jar (como também no hibernate3.jar, caso usando a vinculação
de distribuição.


Fonte: documentecao hibernate 3.5.3 pagina 5.

Em seus mapeamentos, troque[color=red] <generator class=“increment”/>[/color] por [color=green] <generator class=“native”/>[/color]

Depois gere o jar e teste. Acredito que vai funcionar assim.

E

Ainda não funcionou, mas vou dar uma lida na documentação do hibernate sobre o assunto.
Obrigado.

LPJava

que estranho, isso mas o hibernate vai funcionar com base no seu arquivo de configuracao, se for para um endereco remoto e este ficar offline, obvio que ele nao funcionar.
Se quiser veja uns exemplos de conexao offline com o hibernate no meu blog. www.camilolopes.com.br na categoria de hibernate.

flw.

romarcio

edulemos:
Ainda não funcionou, mas vou dar uma lida na documentação do hibernate sobre o assunto.
Obrigado.

Seguinte, eu fiz as alterações que citei nas respostas anteriores e funcionou na minha maquina tanto online como offline, da uma testa na sua maquina: http://www.megaupload.com/?d=ME88LKDL

E

tem razão agora funcionou, devo ter esquecido de mudar algo no meu.
obrigado pela força.

romarcio

edulemos:
tem razão agora funcionou, devo ter esquecido de mudar algo no meu.
obrigado pela força.

Eu mexi direto no seu arquivo .jar

Apenas fiz alterações nos hbm, não mexi em mais nada.

Criado 27 de julho de 2010
Ultima resposta 3 de ago. de 2010
Respostas 12
Participantes 4