Я очень новичок в Glassfish, JPA и т.д., и у меня действительно проблемы с настройкой. То, что я планирую сделать, - это простой сервис RESTful с постоянным бэкэнд. Я использую glassfish3 в качестве сервера приложений и уже развернул простую службу REST с библиотекой jersey. Теперь я хочу предоставить доступ к базе данных через JPA. Glassfish поставляется с JavaDB/дерби и EclipseLink, верно? Итак, я хочу использовать это: -)
Я создал файл persistence.xml в META-INF:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0"
xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="myPU" transaction-type="JTA">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="javax.persistence.jdbc.driver" value="org.apache.derby.jdbc.ClientDataSource" /> <!-- org.apache.derby.jdbc.EmbeddedDriver -->
<property name="javax.persistence.jdbc.url" value="jdbc:derby://localhost:1527/sample;create=true" />
<property name="javax.persistence.jdbc.user" value="APP" />
<property name="javax.persistence.jdbc.password" value="APP" />
<property name="eclipselink.ddl-generation" value="create-tables" />
</properties>
</persistence-unit>
</persistence>
Затем я создал поле в моем ресурсе, где я хочу получить/хранить данные som:
@PersistenceUnit(unitName = "myPU")
EntityManagerFactory emf;
Но "emf" всегда равно NULL: - (
Я предполагаю, что мой persistence.xml не настроен соответствующим образом.
Было бы очень приятно, если у кого-то есть намек, что я делаю неправильно...
спасибо!