IPT presents: New APIs in Java EE 8: MVC 1.0 on BGOUG 2015


Novelties in MVC 1.0 API will be included in the new edition of the course Java + JS Web Programming: Servlet 3.1, HTTP, JSP, JSF 2.2, AJAX, JSON, WebSocket, JAX-RS REST Services, AngularJS
Model-View-Controller (MVC) 1.0 Java EE 8 API

Model-View-Controller (MVC) 1.0 Java EE 8 API

On the autumn BGOUG conference on Nobember 20-th 2015 in Pravetz IPT will present Expected New APIs in Java EE 8: MVC 1.0.

We are expecting the new Java EE 8 to bring many enhancements boosting the productivity of web and enterprise development teams.

The Novelties are:

  • CDI 2.0 – ability to bootstrap (in a standard way) a CDI container in Java SE and to use CDI Core features with pure SE applications. Other enhanced CDI features include: events (ordering, synchronous & asynchronous), AOP (interceptors & decorators), open SPI for 3rd party extensions, SE contexts and modularity;
  • JAX-RS 2.1 – better HATEOS support, non-blocking IO, and reactive programming enhancements, as well as better CDI integration;
  • In the web tier – HTTP/2 support, JSON Binding (JSONB) and JSON Processing (JSON-P – including JSOP Patch & JSON Pointer), Server Sent Events (SSE), and a new MCV 1.0 action-based web development framework.

MVC 1.0 builds on experience with other action-oriented frameworks (Struts, Spring MVC, VRaptor, Play, etc.) and provides a standard, view specification neutral way to build web applications. It is based on existing Java EE technologies like CDI and JAX-RS, integrates well with other APIs like Bean Validation (BV), and is simpler to learn than component oriented frameworks like JSF.

The main features (the specification is still in early draft stage, and is subject to change) that will be discussed include:

  • Model-View-Controller interplay and standard annotations – @Controller, @View;
  • Bootstrapping using javax.ws.rs.core.Application;
  • Observable controller matching, view engine selection, and redirection CDI events;
  • Bean Validation integration and exception mapping;
  • Security related features – prevention of Cross Site Request Forgery (CSRF) and Cross-site scripting (XSS) attacks;
  • Multiple view specification technologies – JSP and Facelets at core, but also Freemarker, Handlebars, Jade, Mustache, Velocity, Thymeleaf, etc. as extensions demonstrated by the the MVC 1.0 reference implementation project Ozark (https://ozark.java.net/).

The presentation examples will be based on a demo project integrating, MVC 1.0, JAX-RS, CDI, BI.