Можно ли использовать Hibernate в качестве поставщика устойчивости Glassfish? - PullRequest
1 голос
/ 27 февраля 2009

Можно ли использовать hibernate в качестве поставщика устойчивости Glassfish и если да, то КАК?

Ответы [ 4 ]

4 голосов
/ 02 апреля 2010

Срок действия ссылки , предоставленной Guss на hibernate.org , истек. Вот кеш Google, датированный 20 февраля 2010 года. Как отмечалось в предыдущей версии связанной вики-страницы, предпочтительно, чтобы библиотеки hibernate находились в вашем .ear / .war, а не в установочном каталоге Glassfish, чтобы разные приложения могли использовать их. собственная версия Hibernate.

Современные инструкции

Для использования гибернации со стеклянными рыбками, все Вы должны сделать, это положить в спящий режим и его зависимости в ваш файл EAR. Это также может быть связано с файлом WAR.

В вашем файле persistence.xml укажите Спящий с использованием этого тега:

<provider>org.hibernate.ejb.HibernatePersistence</provider>

Вы также можете указать спящий режим свойства как обычно, например:

<properties>
  <property name="hibernate.hbm2ddl.auto" value="none"/>
</properties>
2 голосов
/ 15 января 2011

Вместо того, чтобы помещать библиотеки Hibernate в каталог lib сервера Glassfish, вы можете создать EAR и включить их в каталог lib EAR. Я только что опубликовал запись в блоге о нашем опыте с этим подходом. ИМО, лучше связывать Hibernate с самим приложением, а не изменять глобальную конфигурацию сервера. Таким образом, это не повлияет на другие приложения, которые также могут быть запущены на том же сервере (например, устаревшие приложения). См. это для получения дополнительной информации.

2 голосов
/ 27 февраля 2009

Да, это обычный сценарий. Просто разверните Hibernate (и все его зависимости) либо глобально в Glassfish, либо как часть вашего приложения. Затем реализуйте свое приложение, используя Hibernate в качестве библиотеки.

Следующий вопрос, который вы должны рассмотреть, заключается в том, хотите ли вы использовать JPA и Hibernate в качестве поставщика JPA или использовать Hibernate plain.

Другой вопрос, если вы хотите использовать EJB и Entity Beans. Если да, я бы рекомендовал использовать JPA.

Если вы не используете EJB Entity Beans, вы можете использовать JPA или обычный Hibernate для сохранения ваших POJO.

2 голосов
/ 27 февраля 2009

Хотя я не являюсь экспертом ни в Glassfish, ни в Hibernate, думаю, вам, вероятно, будет интересно: Инструкции по использованию Hibernate в Glassfish

...