2014-01-25 5 views
1

Насколько отличается JSF DI от CDI? Я имею в виду, можно ли вводить все то, что мы используем с JSF DI (например, FacesContext, управляемые свойства и т. Д.) С спецификацией CDI? Есть проблемы или подводные камни?JSF 2 DI vs CDI Java EE 6/7

+1

CDI гораздо более надежный, чем JSF CI. Ошибки зависимостей могут быть идентифицированы статически/во время развертывания и менее подвержены утечкам области. Рассмотрите JSF CI как устаревший. – McDowell

ответ

3

Учитывая, что JSF2 не обеспечивает поддержку впрыска для FacesContext, похоже, что в игре может возникнуть больший вопрос. Я считаю, что JSF 2.2 добавила поддержку для этого через @Inject. Управляемые свойства не могут быть введены, ожидаемый эквивалент - предоставить бонус @Named с правильно определенными геттерами и сеттерами и использовать его из пользовательского интерфейса.

1

Нет проблем, вы можете вставлять CDI beans в JSF Managed Beans или использовать напрямую. Я слышал, что JSF DI будет заменен CDI в будущих выпусках Java EE. Вместо этого вы можете использовать все в контейнере Spring IoC.

Смежные вопросы