Как написать провайдер персистентности для Glassfish - PullRequest
0 голосов
/ 11 октября 2011

У меня есть специальное хранилище данных ( Empire RDF ), которое я хотел бы использовать в своем приложении с включенной CMT .

Для этого, я думаю, у меня естьнаписать PersistenceProvider, который я затем объявлю в файле persistence.xml с источником данных jta и соответствующими свойствами соединения.

Как следствие, я пытался, но явсегда сталкиваюсь с проблемами развертывания, связанными с PersistenceUnitLoader # loadPU (главным образом из-за того факта, что, на мой взгляд, Glassfish смешивает мой PersistenceProvider с (Top / Eclipse) Link One).Каков рекомендуемый способ создания PersistenceProvider для Glassfish для нестандартной (не связанной с RDBMS) реализации JPA?

1 Ответ

0 голосов
/ 04 января 2012

Написание PersistenceProvider на самом деле является довольно сложной задачей.

  1. Создайте свой поставщик сохраняемости, реализующий интерфейс PersistenceProvider.В моем случае это был подкласс Empire JPAPersistenceProvider.Не забудьте, что вы можете использовать свойства, считанные из persistence.xml с использованием persistenceUnitInfos.getProperties(), но только в методе PersistenceProvider#createContainerEntityManagerFactory!
  2. В persistence.xml, напишите <provider>mycompany.MyProvider</provider>
...