У меня есть EntityManagerProducer
, который я использую для @Inject EntityManager
.Мой класс EntityManagerProducer
выглядит следующим образом:
@ApplicationScoped
public class EntityManagerProducer {
@PersistenceContext(unitName = "default_unit")
@Produces
EntityManager em;
}
Теперь, когда я использую @Inject EntityManager
, он работает должным образом, присматривая за единицей сохранения с именем default_unit
в файле persistence.xml
.
Что я не понимаю, так это то, почему он ожидает одно и то же имя единицы персистентности, когда я делаю что-то вроде этого:
@Stateless
public class SomeClass {
@PersistenceContext(unitName="other_unit")
private EntityManager entityManager;
}
В файле persistence.xml
я определил только other_unit
,Разве источник не используется только при использовании аннотации @Inject
?