Я получаю исключение «В этом развертывании нет модуля сохраняемости по умолчанию». могу ли я как-то пометить единицу по умолчанию? (у меня есть только одна единица персистентности, поэтому я бы не стал называть ее по имени)
Единица сохраняемости JPA по умолчанию
Ответы (2)
Нет, вы должны называть PU по имени.
person
Jim Barrows
schedule
16.12.2008
Вам не нужно называть PU по имени, если вы делаете инъекцию.
- person Archimedes Trajano; 06.09.2011
Вероятно, вы делаете это с помощью кода, а не позволяете контейнеру управлять им. В этом случае вы должны указать по имени.
В моем коде модульного теста есть этот блок кода для этого.
@Before
public void createEntityManagerFactory() throws IOException {
final Properties p = new Properties();
p.load(getClass().getResourceAsStream("/inmemory.properties"));
emf = Persistence.createEntityManagerFactory("default", p);
}
Однако мой код приложения выглядит так.
/**
* Injected persistence context.
*/
@PersistenceContext
private EntityManager em;
person
Archimedes Trajano
schedule
06.09.2011