Pergunta

Eu tenho um arquivo jar separado que contém mapeamento de entidade de hibernação e mapeamento direto.Minha configuração do Hibernate (cgf.xml) colocada em outro arquivo jar.E, como resultado, pego a exceção "resource: com / iceleads / data / Test.hbm.xml não encontrado".

Exemplo:

entities.jar 
   com.package.entity.TestEntity.java
   com.package.entity.TestEnity.hbm.xml

mainUsage.jar
   com.package.main.MainClass.java - there are I get session factory
      SessionFactory factory = HibernateUtil.getSessionFactory();

   com.package.main.hibernate.cfg.xml

   in HibernateUtil 
        sessionFactory = new Configuration().configure("hibernate.cfg.xml").buildSessionFactory();

  in hibernate.cfg.xml
       <mapping resource="com/package/entity/TestEntity/Test.hbm.xml"/>

entidades.jar no caminho de classe mainUsage.jar

Sugira como posso configurar o hibernate.cfg.xml para usar jar separado com entidades.

Muito obrigado!

Artem

Foi útil?

Solução

Use o método addJar() ao criar uma nova configuração.

sessionFactory = new Configuration().configure("hibernate.cfg.xml")
   .addJar(new File("/path/to/jar")).buildSessionFactory();

Outras dicas

Incluindo o caminho do arquivo de mapeamento no recurso de mapeamento.Por exemplo, use <mapping resource="com/example/test/test.hbm.xml"/>, e test.hbm.xml está localizado no pacote com.example.test dentro do arquivo jar.

Isso vai servir ao propósito.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top