Witam. Pisałem swoją pierwszą aplikację internetową w Javie EE i jak to na początku bywa nie znałem wszystkich możliwości jakie daje ta technologia. Pisałem standardową aplikację czyli EJB, JPA i JSF. W swojej aplikacji używałem cały czas JSFowych managedbenaów, ale niedawno dowiedziałem się o istnieniu czegoś takiego jak beany CDI. Z tego co się orientuję to różnie je od jsfowych beanów to, że można do nich wstrzykiwać zależności od różnych klas, a nie tak jak w przypadku jsfowych beanów za pomocą @ManagedProperty możemy wstrzykiwać tylko inny jsfowy bean. Oraz poza tym definiują coś takiego jak model zdarzeń, przecięcia, dekoratory i stereotyp. Czego w JSFowych beanach nie ma. Moje pytani jest następujące, jeśli piszemy aplikację w Javie EE to powinniśmy używać raczej beanów CDI zamiast JSFowych? Pytanie kieruję do osób, które zajmują się pisaniem takich aplikacji na co dzień.

- Rejestracja:ponad 21 lat
- Ostatnio:około 3 lata
- Lokalizacja:Space: the final frontier
- Postów:26433
2
Zasadniczo CDI to jest pewne "ulepszenie" i próba nadgonienia przez JEE Springa. CDI daje ci większe możliwości i technicznie rzecz biorąc możesz stosować tylko CDI i będzie ok.
Możesz też korzystać z ManagedBeanów tylko do korzystania z JSFa, tzn tylko do obsługi frontendu (beany do przyjmowania / generowania danych), a CDI do wiązania elementów logiki biznesowej.
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.