SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
From
Legacy to
Legendary
Jakarta EE’s Evolution in the Modern Era
● Senior Full Stack Enterprise Java
Developer, Engineer and
Consultant, Sindi Technologies
(Pty) Ltd
○ 18+ years of Java development
experience.
● Jakarta EE Ambassador
● Tech speaker / Blogger
● Devoxx4Kids South Africa (Non-
Profit Organisation) founder and
event organiser
About Me
Where to find me?
https://linktr.ee/theEliteGentleman
buhake@gmail.com
@EliteGentleman
www.sindi.co.za
www.devoxx4kids.org.za
https://jakartaee-ambassadors.io/
Agenda
XtremeJ
2024
The Legacy Foundation
02
Getting started in
Jakarta EE
04
What is Jakarta EE?
01
Jakarta EE in the
modern era
03
Getting involved with
Jakarta EE
05
What is
JakartaEE?
01
JAKARTA EE
• Java EE that has been transitioned to Eclipse
Foundation.
• New licensing and Naming under the Eclipse Foundation
• Open governance, Community driven (under Jakarta EE
Specification Process), Vendor neutral open
collaboration.
• Fully open source: from specification, documentation to
Technology Compatibility Kit (TCK)
https://jakarta.ee
Same definition
“A set of specifications, extending
Java SE, with specifications for
enterprise features, such as
distributed computing and web
services.”
Specification-driven
• Jakarta EE is defined by specifications.
• Specifications defines APIs and their interactions.
• These APIs promotes interoperability, allowing
Jakarta EE applications to communicate with
various services and systems.
Members & Participants
• Key stakeholders transitioned to Jakarta EE and expanding (e.g.
Microsoft joined as Jakarta EE member in 2022).
• Individuals can also become member.
• To join: https://jakarta.ee/membership/
https://jakarta.ee/membership/members/
Members & Participants
Strategic Members Participating Members Enterprise Members
Guest Members
The legacy
foundation.
02
Jakarta EE Evolution
JPE
J2EE
1.2
Servlet,
JSP, EJB,
JMS
J2EE
1.3
CMP,
JCA
J2EE
1.4
JAX-WS
Java EE 5
EJB 3,
JPA, JSF,
JAXB, JAX-
WS
Java EE 7
WebSocket,
JSON,
Concurrency,
Batch, pruning
Java EE 8
HTTP/2, SSE,
Security,
pruning
Java EE 6
Profiles,
CDI, JAX-
RS, Bean
Validation
Jakarta EE
8
Open-source
governance
Jakarta EE
9.x
Namespace
transition
New features,
updates
Jakarta EE
11
JNoSQL,
Jakara Data
1.0
Jakarta EE
10
● Early application servers had to be built to run on the Application server of
choice:
○ Lack of modularity. Tightly-coupled.
● Slow-release cadence
○ New versions of Java EE took years instead of months.
● Lack of interest in the development of Java EE
○ Oracle silently stopped funding and development of Java EE development since 2015
(took 4 years to release Java EE 8)
● Lack of adoption to cloud-native.
○ Thus, Spring Boot, released in April 2014, became the de-facto, popular, framework
for building Microservices.
Challenges with Java EE
Jakarta EE in
modern era…
03
● Jakarta EE is the basis for the top frameworks used for building enterprise
and cloud native applications.
○ Quarkus, Helidon, Spring/SpringBoot and MicroProfile rely on Jakarta EE
specifications.
● Many enterprise Java applications are deployed on Jakarta EE Application
servers
○ Tomcat, TomEE, Jetty, Wildfly, JBoss EAP, Glassfish, Payara, Payara Micro,
Websphere, OpenLiberty, WebLogic
● Popular Java libraries depends on at least one Jakarta EE API
○ PrimeFaces, OmniFaces, Hibernate, EclipseLink, CXF, Jersey, RESTEasy, Weld,
ActiveMQ, Struts,
The importance of Jakarta EE in the Java
Ecosystem
Jakarta EE releases
Jakarta EE 10
Jakarta EE Core Profile, independent
individual specification development
Java SE 11 Multiple Compatible implementations
available on the release date
Jakarta EE 9 New jakarta namespace Java SE 8
Removal of deprecated specs
Jakarta EE 8
javax namespace, New process,
New licensing New logo
Java EE 8 Eclipse Foundation infrastructure
Java EE 8 Oracle infrastructure
& JCP process
Sources,
TCKs, Docs
Jakarta EE 9.1
Jakarta EE 11 Jakarta EE 11 Release Plan in works
Jakarta EE Platform Compatible Products
https://jakarta.ee/compatibility/
List of Compatible Products
by Releases
Jakarta EE 8
Compatible Products
Jakarta EE 9
Compatible Products
Jakarta EE 9.1
Compatible Products
Jakarta EE 10
Compatible Products
Authentication 3.0
Concurrency 3.0
CDI 4.0
Persistence 3.1
Faces 4.0
Security 3.0
Servlet 6.0
Standard Tag Libraries 3.0
Server Pages 3.1
WebSocket 2.1
Bean Validation 3.0
Debugging Support 2.0
Enterprise Beans Lite 4.0
Managed Beans 2.0
Transactions 2.0
Jakarta EE 10 Platform
Jakarta EE 10 Web Profile
Jakarta EE 10 Platform
Interceptors 2.1
Dependency Injection 2.0
Authorization 2.1
Activation 2.1
Batch 2.1
Connectors 2.1
Messaging 3.1
Enterprise Beans 4.0
Mail 2.1
JSON Binding 3.0
Annotations 2.1
Updated Not Updated New
Jakarta EE 10 Core Profile
Expression Language 5.0
Restful Web Services 3.1
Json Processing 2.1
Dependency Injection 2.0
CDI Lite 4
● Visible release cycle
○ 3 major version release of Jakarta EE framework, from 2019 (Jakarta EE 8) to 2022 –
current (Jakarta EE 10).
● Jakarta EE 10 (current release) IS cloud-native
○ Shift from monolithic to lighter and more modular application architecture.
● Quick adaption to latest Java SE version.
○ Java record, Virtual threads
● Eclipse Microprofile is the baseline platform that optimises Jakarta EE for
microservices architecture.
○ Adopts Jakarta EE Core Profile (current version, Eclipse Microprofile 6.1).
● List of Jakarta EE compatible implementations are growing.
● List of Jakarta EE members are growing.
Jakarta EE today
● Lightweight framework.
○ Documentations are updated regularly to reflect changes on the specifications
○ Applications are lightweight, with smaller JAR/WAR file on application build.
○ No dependency on external servers/resources. Just focus on code.
● Simple to run as standalone application
○ SeBootstrap (to run microservice as standalone app).
○ SeContainerInitializer (to run CDI application as standalone app).
● Simple to test
○ Testcontainers, jUnit/TestNG, Mockito, etc.
● Massive industry leading and community support.
● Jakarta EE Core Profile spawns various Microservices frameworks
○ Quarkus, Helidon, Microprofile
● Docker images exists for Jakarta EE compatible runtimes
○ Glassfish, Payara, Wildfly, OpenLiberty
Updated
Not
Updated
New
RESTful Web
Services 3.1
JSON Processing
2.1
JSON Binding 3.0
Annotations 2.1
CDI Lite 4.0
Interceptors 2.1
Dependency
Injection 2.0
Core Profile
Jakarta EE Survey 2023 Result
Getting
started…
04
start.jakarta.ee
● Generate Mavenised Jakarta EE
projects
● Supported via popular IDEs
● IntelliJ, NetBeans, Eclipse, Visual Studio
Code.
Migrating your application to Jakarta EE
● Mavenise your Java application
● Choose your compatible Jakarta EE
compatible product
● https://jakarta.ee/compatibility/certificatio
n/10/
● Update your Jakarta EE version in
pom.xml
● Rename imports (javax.* to
jakarta.*)
● Update your project XML schema
and properties files.
● Or use tools to do all that migration
for you
● OpenRewrite, Eclipse Transformer,
various IDEs.
● Test, Test, Test!
Try it now…
https://jakarta.ee/compatibility/certification/10/
● Payara Cloud!
○ Payara’s solution to deploying your Microservice on the cloud.
○ Just upload your WAR file using your Payara Cloud Account.
● Microservices frameworks
○ Quarkus (Kubernetes-native, GraalVM and Hotspot)
○ Helidon (Cloud-native microservice architecture that runs on Java virtual threads).
○ Eclipse MicroProfile (Base framework for all microservices). To get started:
https://start.microprofile.io/
● Containerised deployments
○ Various runtimes have Docker images on Docker registry.
○ Build and deploy your application to any cloud provider: AWS, Microsoft Azure,
Google Cloud, RedHat OpenShift Cluster, etc.
On the cloud
Getting involved
with Jakarta EE…
05
• Follow Jakarta EE technologies that interest you and share opinion
• https://jakarta.ee/connect/mailing-lists/
• Advocate for a specific change or feature
• https://jakarta.ee/projects/
• Help implement a change in API, specification, TCK or implementation
• Sign Eclipse Contributor Agreement
• https://www.eclipse.org/legal/ECA.php
• Becoming a committer comes much later
• Engage an Ambassador if needed
• https://jakartaee-ambassadors.io
• JakartaOne Livestream recordings
• https://jakartaone.org
• Jakarta EE Community alias
• https://accounts.eclipse.org/mailing-list/jakarta.ee-
community
• Jakarta EE X (formerly Twitter) handle
• @JakartaEE
• Jakarta Tech Talks
• https://www.meetup.com/jakartatechtalks_
Resources
Thank you!
Questions?
Where to find me?
https://linktr.ee/theEliteGentleman
buhake@gmail.com
@EliteGentleman
www.sindi.co.za
www.devoxx4kids.org.za
https://jakartaee-ambassadors.io/

Contenu connexe

Similaire à From Legacy to Legendary - Jakarta EE's Evolution in the Modern Era

Jakarta EE: Today and Tomorrow
Jakarta EE: Today and TomorrowJakarta EE: Today and Tomorrow
Jakarta EE: Today and TomorrowDmitry Kornilov
 
Jakarta EE: Today and Tomorrow
Jakarta EE: Today and TomorrowJakarta EE: Today and Tomorrow
Jakarta EE: Today and TomorrowDmitry Kornilov
 
EE4J: Java EE & Jakarta EE JFR & JMC
EE4J: Java EE & Jakarta EE  JFR & JMCEE4J: Java EE & Jakarta EE  JFR & JMC
EE4J: Java EE & Jakarta EE JFR & JMCM. Fevzi Korkutata
 
EE4J: Java EE & Jakarta EE JFR & JMC
EE4J: Java EE & Jakarta EE  JFR & JMCEE4J: Java EE & Jakarta EE  JFR & JMC
EE4J: Java EE & Jakarta EE JFR & JMCM. Fevzi Korkutata
 
OpenCloudNative-BeJUG.pptx
OpenCloudNative-BeJUG.pptxOpenCloudNative-BeJUG.pptx
OpenCloudNative-BeJUG.pptxEmilyJiang23
 
OpenCloudNative-BeJUG.pptx
OpenCloudNative-BeJUG.pptxOpenCloudNative-BeJUG.pptx
OpenCloudNative-BeJUG.pptxEmilyJiang23
 
Implementing Microservices with Jakarta EE and MicroProfile
Implementing Microservices with Jakarta EE and MicroProfileImplementing Microservices with Jakarta EE and MicroProfile
Implementing Microservices with Jakarta EE and MicroProfileKevin Sutter
 
Implementing Microservices with Jakarta EE and MicroProfile
Implementing Microservices with Jakarta EE and MicroProfileImplementing Microservices with Jakarta EE and MicroProfile
Implementing Microservices with Jakarta EE and MicroProfileKevin Sutter
 
Migration from Java EE to JakartaEE 10 - Challenges & Opportunities
Migration from Java EE to JakartaEE 10 - Challenges & OpportunitiesMigration from Java EE to JakartaEE 10 - Challenges & Opportunities
Migration from Java EE to JakartaEE 10 - Challenges & OpportunitiesBuhake Sindi
 
Migration from Java EE to JakartaEE 10 - Challenges & Opportunities
Migration from Java EE to JakartaEE 10 - Challenges & OpportunitiesMigration from Java EE to JakartaEE 10 - Challenges & Opportunities
Migration from Java EE to JakartaEE 10 - Challenges & OpportunitiesBuhake Sindi
 
MicroProfile for MicroServices
MicroProfile for MicroServicesMicroProfile for MicroServices
MicroProfile for MicroServicesMert Çalışkan
 
MicroProfile for MicroServices
MicroProfile for MicroServicesMicroProfile for MicroServices
MicroProfile for MicroServicesMert Çalışkan
 
Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807rehoscript
 
Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807rehoscript
 
Oracle JET and React Frontends.pptx
Oracle JET and React Frontends.pptxOracle JET and React Frontends.pptx
Oracle JET and React Frontends.pptxDan Curtis
 
Oracle JET and React Frontends.pptx
Oracle JET and React Frontends.pptxOracle JET and React Frontends.pptx
Oracle JET and React Frontends.pptxDan Curtis
 

Similaire à From Legacy to Legendary - Jakarta EE's Evolution in the Modern Era (20)

Jakarta EE: Today and Tomorrow
Jakarta EE: Today and TomorrowJakarta EE: Today and Tomorrow
Jakarta EE: Today and Tomorrow
 
Jakarta EE: Today and Tomorrow
Jakarta EE: Today and TomorrowJakarta EE: Today and Tomorrow
Jakarta EE: Today and Tomorrow
 
EE4J: Java EE & Jakarta EE JFR & JMC
EE4J: Java EE & Jakarta EE  JFR & JMCEE4J: Java EE & Jakarta EE  JFR & JMC
EE4J: Java EE & Jakarta EE JFR & JMC
 
EE4J: Java EE & Jakarta EE JFR & JMC
EE4J: Java EE & Jakarta EE  JFR & JMCEE4J: Java EE & Jakarta EE  JFR & JMC
EE4J: Java EE & Jakarta EE JFR & JMC
 
OpenCloudNative-BeJUG.pptx
OpenCloudNative-BeJUG.pptxOpenCloudNative-BeJUG.pptx
OpenCloudNative-BeJUG.pptx
 
OpenCloudNative-BeJUG.pptx
OpenCloudNative-BeJUG.pptxOpenCloudNative-BeJUG.pptx
OpenCloudNative-BeJUG.pptx
 
Implementing Microservices with Jakarta EE and MicroProfile
Implementing Microservices with Jakarta EE and MicroProfileImplementing Microservices with Jakarta EE and MicroProfile
Implementing Microservices with Jakarta EE and MicroProfile
 
Implementing Microservices with Jakarta EE and MicroProfile
Implementing Microservices with Jakarta EE and MicroProfileImplementing Microservices with Jakarta EE and MicroProfile
Implementing Microservices with Jakarta EE and MicroProfile
 
Migration from Java EE to JakartaEE 10 - Challenges & Opportunities
Migration from Java EE to JakartaEE 10 - Challenges & OpportunitiesMigration from Java EE to JakartaEE 10 - Challenges & Opportunities
Migration from Java EE to JakartaEE 10 - Challenges & Opportunities
 
Migration from Java EE to JakartaEE 10 - Challenges & Opportunities
Migration from Java EE to JakartaEE 10 - Challenges & OpportunitiesMigration from Java EE to JakartaEE 10 - Challenges & Opportunities
Migration from Java EE to JakartaEE 10 - Challenges & Opportunities
 
MicroProfile for MicroServices
MicroProfile for MicroServicesMicroProfile for MicroServices
MicroProfile for MicroServices
 
MicroProfile for MicroServices
MicroProfile for MicroServicesMicroProfile for MicroServices
MicroProfile for MicroServices
 
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
 
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
 
Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807
 
Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807
 
Resume & CV
Resume & CVResume & CV
Resume & CV
 
Resume & CV
Resume & CVResume & CV
Resume & CV
 
Oracle JET and React Frontends.pptx
Oracle JET and React Frontends.pptxOracle JET and React Frontends.pptx
Oracle JET and React Frontends.pptx
 
Oracle JET and React Frontends.pptx
Oracle JET and React Frontends.pptxOracle JET and React Frontends.pptx
Oracle JET and React Frontends.pptx
 

Dernier

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 

Dernier (20)

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 

From Legacy to Legendary - Jakarta EE's Evolution in the Modern Era

  • 1. From Legacy to Legendary Jakarta EE’s Evolution in the Modern Era
  • 2. ● Senior Full Stack Enterprise Java Developer, Engineer and Consultant, Sindi Technologies (Pty) Ltd ○ 18+ years of Java development experience. ● Jakarta EE Ambassador ● Tech speaker / Blogger ● Devoxx4Kids South Africa (Non- Profit Organisation) founder and event organiser About Me
  • 3. Where to find me? https://linktr.ee/theEliteGentleman buhake@gmail.com @EliteGentleman www.sindi.co.za www.devoxx4kids.org.za https://jakartaee-ambassadors.io/
  • 4. Agenda XtremeJ 2024 The Legacy Foundation 02 Getting started in Jakarta EE 04 What is Jakarta EE? 01 Jakarta EE in the modern era 03 Getting involved with Jakarta EE 05
  • 6. JAKARTA EE • Java EE that has been transitioned to Eclipse Foundation. • New licensing and Naming under the Eclipse Foundation • Open governance, Community driven (under Jakarta EE Specification Process), Vendor neutral open collaboration. • Fully open source: from specification, documentation to Technology Compatibility Kit (TCK) https://jakarta.ee
  • 7. Same definition “A set of specifications, extending Java SE, with specifications for enterprise features, such as distributed computing and web services.”
  • 8. Specification-driven • Jakarta EE is defined by specifications. • Specifications defines APIs and their interactions. • These APIs promotes interoperability, allowing Jakarta EE applications to communicate with various services and systems.
  • 9. Members & Participants • Key stakeholders transitioned to Jakarta EE and expanding (e.g. Microsoft joined as Jakarta EE member in 2022). • Individuals can also become member. • To join: https://jakarta.ee/membership/ https://jakarta.ee/membership/members/
  • 10. Members & Participants Strategic Members Participating Members Enterprise Members Guest Members
  • 12. Jakarta EE Evolution JPE J2EE 1.2 Servlet, JSP, EJB, JMS J2EE 1.3 CMP, JCA J2EE 1.4 JAX-WS Java EE 5 EJB 3, JPA, JSF, JAXB, JAX- WS Java EE 7 WebSocket, JSON, Concurrency, Batch, pruning Java EE 8 HTTP/2, SSE, Security, pruning Java EE 6 Profiles, CDI, JAX- RS, Bean Validation Jakarta EE 8 Open-source governance Jakarta EE 9.x Namespace transition New features, updates Jakarta EE 11 JNoSQL, Jakara Data 1.0 Jakarta EE 10
  • 13. ● Early application servers had to be built to run on the Application server of choice: ○ Lack of modularity. Tightly-coupled. ● Slow-release cadence ○ New versions of Java EE took years instead of months. ● Lack of interest in the development of Java EE ○ Oracle silently stopped funding and development of Java EE development since 2015 (took 4 years to release Java EE 8) ● Lack of adoption to cloud-native. ○ Thus, Spring Boot, released in April 2014, became the de-facto, popular, framework for building Microservices. Challenges with Java EE
  • 14. Jakarta EE in modern era… 03
  • 15. ● Jakarta EE is the basis for the top frameworks used for building enterprise and cloud native applications. ○ Quarkus, Helidon, Spring/SpringBoot and MicroProfile rely on Jakarta EE specifications. ● Many enterprise Java applications are deployed on Jakarta EE Application servers ○ Tomcat, TomEE, Jetty, Wildfly, JBoss EAP, Glassfish, Payara, Payara Micro, Websphere, OpenLiberty, WebLogic ● Popular Java libraries depends on at least one Jakarta EE API ○ PrimeFaces, OmniFaces, Hibernate, EclipseLink, CXF, Jersey, RESTEasy, Weld, ActiveMQ, Struts, The importance of Jakarta EE in the Java Ecosystem
  • 16. Jakarta EE releases Jakarta EE 10 Jakarta EE Core Profile, independent individual specification development Java SE 11 Multiple Compatible implementations available on the release date Jakarta EE 9 New jakarta namespace Java SE 8 Removal of deprecated specs Jakarta EE 8 javax namespace, New process, New licensing New logo Java EE 8 Eclipse Foundation infrastructure Java EE 8 Oracle infrastructure & JCP process Sources, TCKs, Docs Jakarta EE 9.1 Jakarta EE 11 Jakarta EE 11 Release Plan in works
  • 17. Jakarta EE Platform Compatible Products https://jakarta.ee/compatibility/ List of Compatible Products by Releases Jakarta EE 8 Compatible Products Jakarta EE 9 Compatible Products Jakarta EE 9.1 Compatible Products Jakarta EE 10 Compatible Products
  • 18. Authentication 3.0 Concurrency 3.0 CDI 4.0 Persistence 3.1 Faces 4.0 Security 3.0 Servlet 6.0 Standard Tag Libraries 3.0 Server Pages 3.1 WebSocket 2.1 Bean Validation 3.0 Debugging Support 2.0 Enterprise Beans Lite 4.0 Managed Beans 2.0 Transactions 2.0 Jakarta EE 10 Platform Jakarta EE 10 Web Profile Jakarta EE 10 Platform Interceptors 2.1 Dependency Injection 2.0 Authorization 2.1 Activation 2.1 Batch 2.1 Connectors 2.1 Messaging 3.1 Enterprise Beans 4.0 Mail 2.1 JSON Binding 3.0 Annotations 2.1 Updated Not Updated New Jakarta EE 10 Core Profile Expression Language 5.0 Restful Web Services 3.1 Json Processing 2.1 Dependency Injection 2.0 CDI Lite 4
  • 19. ● Visible release cycle ○ 3 major version release of Jakarta EE framework, from 2019 (Jakarta EE 8) to 2022 – current (Jakarta EE 10). ● Jakarta EE 10 (current release) IS cloud-native ○ Shift from monolithic to lighter and more modular application architecture. ● Quick adaption to latest Java SE version. ○ Java record, Virtual threads ● Eclipse Microprofile is the baseline platform that optimises Jakarta EE for microservices architecture. ○ Adopts Jakarta EE Core Profile (current version, Eclipse Microprofile 6.1). ● List of Jakarta EE compatible implementations are growing. ● List of Jakarta EE members are growing. Jakarta EE today
  • 20. ● Lightweight framework. ○ Documentations are updated regularly to reflect changes on the specifications ○ Applications are lightweight, with smaller JAR/WAR file on application build. ○ No dependency on external servers/resources. Just focus on code. ● Simple to run as standalone application ○ SeBootstrap (to run microservice as standalone app). ○ SeContainerInitializer (to run CDI application as standalone app). ● Simple to test ○ Testcontainers, jUnit/TestNG, Mockito, etc. ● Massive industry leading and community support. ● Jakarta EE Core Profile spawns various Microservices frameworks ○ Quarkus, Helidon, Microprofile ● Docker images exists for Jakarta EE compatible runtimes ○ Glassfish, Payara, Wildfly, OpenLiberty
  • 21. Updated Not Updated New RESTful Web Services 3.1 JSON Processing 2.1 JSON Binding 3.0 Annotations 2.1 CDI Lite 4.0 Interceptors 2.1 Dependency Injection 2.0 Core Profile
  • 22. Jakarta EE Survey 2023 Result
  • 24. start.jakarta.ee ● Generate Mavenised Jakarta EE projects ● Supported via popular IDEs ● IntelliJ, NetBeans, Eclipse, Visual Studio Code.
  • 25. Migrating your application to Jakarta EE ● Mavenise your Java application ● Choose your compatible Jakarta EE compatible product ● https://jakarta.ee/compatibility/certificatio n/10/ ● Update your Jakarta EE version in pom.xml ● Rename imports (javax.* to jakarta.*) ● Update your project XML schema and properties files. ● Or use tools to do all that migration for you ● OpenRewrite, Eclipse Transformer, various IDEs. ● Test, Test, Test!
  • 27. ● Payara Cloud! ○ Payara’s solution to deploying your Microservice on the cloud. ○ Just upload your WAR file using your Payara Cloud Account. ● Microservices frameworks ○ Quarkus (Kubernetes-native, GraalVM and Hotspot) ○ Helidon (Cloud-native microservice architecture that runs on Java virtual threads). ○ Eclipse MicroProfile (Base framework for all microservices). To get started: https://start.microprofile.io/ ● Containerised deployments ○ Various runtimes have Docker images on Docker registry. ○ Build and deploy your application to any cloud provider: AWS, Microsoft Azure, Google Cloud, RedHat OpenShift Cluster, etc. On the cloud
  • 29. • Follow Jakarta EE technologies that interest you and share opinion • https://jakarta.ee/connect/mailing-lists/ • Advocate for a specific change or feature • https://jakarta.ee/projects/ • Help implement a change in API, specification, TCK or implementation • Sign Eclipse Contributor Agreement • https://www.eclipse.org/legal/ECA.php • Becoming a committer comes much later • Engage an Ambassador if needed • https://jakartaee-ambassadors.io
  • 30. • JakartaOne Livestream recordings • https://jakartaone.org • Jakarta EE Community alias • https://accounts.eclipse.org/mailing-list/jakarta.ee- community • Jakarta EE X (formerly Twitter) handle • @JakartaEE • Jakarta Tech Talks • https://www.meetup.com/jakartatechtalks_ Resources
  • 33. Where to find me? https://linktr.ee/theEliteGentleman buhake@gmail.com @EliteGentleman www.sindi.co.za www.devoxx4kids.org.za https://jakartaee-ambassadors.io/