Я пытаюсь создать службу аудита с EntityManager
. Однако этот EntityManager
никогда не инициализируется при запуске приложения, поэтому при вызове он выдает NullPointerException
.NullPointerException для EntityManager с использованием @PersistenceContext
Мой код выглядит следующим образом:
import org.springframework.stereotype.Service;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
@Service
public class AuditServiceImpl implements AuditService {
private static final String FULL_NAME = "%s %s";
@PersistenceContext
private EntityManager entityManager;
public EntityManager getEntityManager(){
return entityManager;
}
}
Я ожидал, что @PersistenceContext
аннотацию бы исправить это для меня, но это не так. Я видел несколько других сообщений о подобных проблемах, но большинство решений выглядят устаревшими, поэтому я решил создать еще один пост.
Может ли кто-нибудь пролить свет на проблему, может быть, даже на решение?
Как вы создаете экземпляр 'AuditServiceImpl'? –
Я использую для этого конструктор по умолчанию. –
И как вы ожидаете, что Spring добавит зависимости в экземпляр компонента, который он не знает? Если вы создаете экземпляры самостоятельно, никакие зависимости не будут введены. –