Я пытаюсь заменить мои аннотации CDI/EJB на Spring. Но я изо всех сил пытаюсь сделать это правильно.Миграция аннотаций CDI/EJB на аннотации Spring
Это то, что я имею в КДИ/EJB:
@Stateless
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
class Service {
@Inject
EntityManager em;
}
@Named
@RequestScoped
class Facade {
@Inject
Service service;
}
Теперь я хотел бы сделать следующее:
@Stateless
@Transactional
@Repository
class Service {
@Inject
EntityManager em;
}
Как насчет лица без гражданства? Что такое аквивалент весной? Очевидные Я не могу просто удалить эту аннотацию, бв, то я получаю эти исключения:
javax.el.PropertyNotFoundException: /input.xhtml @15,30 registerButtonAction="#{facade.createNew()}": The class 'Facade$Proxy$_$$_WeldClientProxy' does not have the property ...
Далее:
@Named
@Service
class Facade {
@Autowired
Service service;
}
Должен ли я просто заменить все @Inject
аннотаций с @Autowired
? Есть что-то весеннее, что заботится об именах EL, чтобы я мог удалить @Named
?
Должен ли я также аннотировать мои сущности JPA?
Зачем вам это нужно? Не пытаясь начать пламенную войну, просто любопытно. – NBW
Весенние аннотации bc делают вещи очень легкими. например, аспекты, могут перехватывать исключения во всех аннотированных классах @Component. – membersound
EE6/EJb 3.1/CDI также предлагает такие функциональные возможности с аннотациями, перехватчиками и т. Д. В этом случае я не вижу значения в попытке переключиться, но это только я. – NBW