Martin Polák
Framework pro vývoj aplikací + aplikační server.
Obsahuje zejména:
...včetně zmateného(?) číslování verzí.
Správa životního cyklu komponent a DI...
Application | Session | View | Request |
Request | |||
View | Request | ||
Request | |||
Session | View | Request | |
Request | |||
View | Request | ||
Request |
...a stabilita API, zpětná kompatibilita.
Udržuje instance komponent, hlídá rozsah platnosti a poskytuje platné instance.
@RequestScoped
public class ItemService
...
@Inject
private ItemService itemService;
Umožňuje snadno implementovat některé návrhové vzory (Interceptor, Observer, ...).
Obvykle zabezpečuje mapování (ORM) z relační reprezentace dat na objektovou reprezentaci a opačně + práci s databází.
Komponenty, které spravuje EJB kontejner s vlastním životním cyklem.
Interoperabilita s CDI.
Umožňují vyvíjet webové uživatelské rozhraní.
Ukázka JSF:
Usnadňuje vývoj rozhraní pro komunikaci aplikací přes SOAP nebo REST rozhraní.
Redukuje množství kódu (a tím i chyb).
@Path("/item")
@Produces({MediaType.APPLICATION_JSON})
@Consumes({MediaType.APPLICATION_JSON})
@Model
public class ItemApi {
...
@GET
@Path("/all")
public Response items() {
...
Volně dostupné | Komerční |
---|---|
TomEE | WebSphere |
Glassfish | WebLogic |
OpenLiberty | SAP NetWeaver AS |
...a další.
Další vývoj platformy - Jakarta EE (2018, pod křídly Eclipse Foundation).