JavaRoadmap icon indicating copy to clipboard operation
JavaRoadmap copied to clipboard

Add Jakarta EE Main Node

Open hantsy opened this issue 7 months ago • 0 comments

Under JDK, I think there should has a Node Jakarta EE to cover all Jakarta EE sepc and popular implementations.

  • Servlet -> Apache Tomcat, Eclipse Jetty
  • Faces -> Eclipse EE4J Mojarra, Apache MyFaces, Omnifaces Utilities
  • Rest -> RedHat Resteasy, Eclipse EE4J Jersey
  • CDI -> Weld, Apache OpenBeans
  • Persistence -> EclipseLink, Hibernate, (Apache OpenJPA, DataNucleus is not active)
  • Validation -> Hibernate Validator
  • Data -> EclipseLink, Hibernate
  • Messaging -> Eclipse OpenMQ, Apache ActiveMQ Artemis
  • Security -> Eclipse Soteria
  • JSONP/JSONB -> Eclipse JSONB/JSONP, Apache Johnzon
  • Concurrency
  • Transaction
  • Mail/Activation
  • Expression Language - Eclipse ExpressLy

Jakarta EE includes three profiles to categorize the above spec into different group:

  • Platform
  • Web Profile
  • Core Profile

MicroProfile should be a sister project of Jakarta EE, it is based on Jakarta EE Core Profile, and currently almost all products use RedHat SmallRye implementations.

  • Config
  • JWT
  • Reactive Messaging
  • RestClient
  • Telemetry/Metrics/Health
  • OpenAPI
  • etc

The Jakarta EE runtimes/implementers include:

  • Glassfish
  • WildFLy
  • OpenLiberty
  • Apache TomEE
  • Payara(an early fork from GlassFish, open source and commercial support)

Testing tools.

  • Arquillian
  • Rest Assured
  • MicroShed
  • WireMock
  • Pact(CDC testing, Spring Cloud has a project named Spring Cloud Contract)

The derived projects and frameworks.

  • Spring 6 traditional WebMvc aligned to Jakarta EE 9/10+
  • Quarkus supports Jakarta EE 10 + MicroProfile
  • Helidon supports partial Jakarta EE 10 + MicroProfile
  • Micronaunt 4 has already aligned to Jakarta EE 10 and move to jakarta namespace.

hantsy avatar Jul 14 '24 09:07 hantsy