Devoxx 2018: Java EE 8+ available now!

Java EE8 Plus

Oracle heeft in 2017 samen met andere Java EE leiders aangekondigd dat Java EE zal worden open sourced door de Eclipse Foundation onder de naam Jakarta EE. Directeur van de Eclipse Foundation in Europe, Gaël Blondelle, wist op Devoxx te vertellen dat er goede progressie werd gemaakt met de overgang, maar dat de eerste versie van Jakarta EE pas in de eerste helft van 2019 beschikbaar zal komen. Gael BlondelleHierdoor valt te verwachten dat vernieuwingen in Jakarta EE op het gebied van microservices niet voor eind 2019 beschikbaar komen.

Eclipse MicroProfile

Binnen de Eclipse Foundation is een project actief aan de weg aan het timmeren op het gebied van microservices, Eclipse MicroProfile. Dit project is gebaseerd op een subset van de JEE specificaties die minimaal nodig zijn om een microservice te bouwen, te weten:

  • JAX-RS, voor RESTful endpoints
  • CDI, voor context en dependency injection
  • JSON-P, voor het processen van JSON
  • JSON-B, JSON binding

Daarnaast heeft dit project ook nog een aantal nieuwe specificaties gedefinieerd:

  • Config, configureren van microservices
  • Fault Tolerance, scheiding van execution logic van business logic
  • Health Check, state van de microservice
  • JWT Authentication, role based access control over microservices heen
  • Metrics, monitoring data
  • OpenAPI, uniforme Java API
  • OpenTracing, tracen van calls over microservices heen
  • Rest Client, client voor type safe rest calls

Eclipse MicroProfile

De volledige specificaties

Bij het ontwikkelen van microservices zijn er een aantal JEE specificaties die worden gemist in het MicroProfile o.a.:

  • EJB, Enterprise JavaBeans
  • JTA, Java Transaction API
  • JPA, Java Persistence API
  • Bean Validation

Java EE 8+

Diverse ‘traditionele’ leveranciers van applicatieservers zijn ook actief betrokken bij MicroProfile en hebben beide specificaties in recente releases van hun applicatieservers ter beschikking gesteld. Dit zijn o.a.:

  • RedHat, WildFly
  • IBM, WebSphere Liberty
  • Payara Services, Payara
  • Tomitribe, Apache TomEE

Het wordt hierdoor mogelijk microservices te bouwen die beide specificaties combineren, zo ontstaat er dus een soort van Java EE 8+.
En het mooiste van dit alles … het is available now!