Ресурс отображения Hibernate находится в отдельном банке - PullRequest
4 голосов
/ 22 марта 2011

У меня есть отдельный JAR-файл, содержащий отображение и отображение сущности hibernate напрямую. Мой Hibernate Confg (cgf.xml) помещен в другой файл JAR. И в результате я ловлю исключение «ресурс: com / iceleads / data / Test.hbm.xml не найден».

Пример:

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"/>

entity.jar в mainUsage.jar classpath

Подскажите, пожалуйста, как я могу настроить hibernate.cfg.xml для использования отдельного jar с сущностями.

Большое спасибо!

Артем

Ответы [ 2 ]

1 голос
/ 19 ноября 2012

При создании новой конфигурации используйте метод addJar().

sessionFactory = new Configuration().configure("hibernate.cfg.xml")
   .addJar(new File("/path/to/jar")).buildSessionFactory();
0 голосов
/ 14 ноября 2017

Включение пути файла сопоставления в ресурс сопоставления.Например, используйте <mapping resource="com/example/test/test.hbm.xml"/>, а test.hbm.xml находится в пакете com.example.test внутри файла jar.

Это послужит цели.

...