SlideShare a Scribd company logo
Java server-side
20 years old and still innovative!
@jefrajames @sebi2706
J2EE
Servlet
JSP
EJB 1-2
JMS
1999-2003 2006 2009 2013 2017 2019
Java EE 5
Ease of Dev
EJB 3
JPA
JSF
JAX-WS
Java EE 6
CDI
JAX-RS
Bean
Validation
Web Profile
Java EE 7
JBatch
Web Socket
JSON-P
Concurrency
The origins
Sun Enterprise times
From J2EE to Jakarta EE
A user experience
Java EE 8
Java SE 8
JSON-B
Security
Jakarta EE
Java EE 8
Equivalent
GlassFish 5.1
Jakarta EE 8
Eclipse Cloud times
Oracle Enterprise times
Current status
Fragmented yet consistent and innovative
MicroProfile 1.x
Java EE 8
MicroProfile 2.x, 3.x
Jakarta EE 8Java EE 7 Jakarta EE 9
MicroProfile 3.x
Innovation Innovation
Innovation
Java SE 7,8
Java SE 9, 10, 11, 12, 13 …
Amazon Coretto, Alibaba Dragonwell, AdoptOpenJdk, Azul
HotSpot, OpenJ9, GraalVM
Innovation
• Standards are slow
– Broad consensus and getting things right takes time
• Standard don’t guarantee portability
– Still better than vendor lock-in
• Standards don’t have feature XYZ
– The core of an ecosystem can’t be bloated or complex
• Standards don’t innovate
– In fact they do and over-standardizing the unproven or niche case is a bad
idea
• It’s just a bench of vendor experts
• You can on-board
Standards?
Shifting to cloud-native applications
2006 2008 2009 2010 2011 2012 2013 2014 2015
Shifting to cloud-native applications
To
Private on premise data centers Cloud platforms
Bare metal infrastructure Infrastructure as code
Mutualized full-blown application servers Just enough runtime
Monolith Microservices
SQL-only Polyglot persistency
ACID transactions Eventual consistency
Synchronous & imperative programming Asynchronous & functional programming
Standalone applications API-first platforms
From
● Runtime efficiency: fast startup, small system footprint, container awareness
● Built-in “Cloud-native” features:
○ Observability
○ Fault Tolerance
○ External configuration sources
○ Distributed security
○ Service mesh readiness
● Agile specification process
Innovation needed!
MicroProfile
support
The application servers (r)evolution
Java/Jakarta 8 EE
support
Demo time!
Simple Card Payment System
Easy to Pay
Check amount,
POS, card
Ask authorization
If amount >100$
Fallback delegation
if amount <=200$
Smart Bank
Gateway
Accept if
amount<=500$
TomEE
(Port 8082)
Merchant
Back Office
Payment Request
Payment Response
Authorization Request
Authorization Response
OpenJ9?
Memory footprint: -30%
Startup time
(optional class sharing)
: -15%
• Renew the Java EE “legacy” image
• MicroProfile and Jakarta EE integration?
• javax packages renaming: big bang or incremental?
• Jakarta EE release cadence
• Evolution of the ecosystem: IBM, Red Hat, Microsoft, Amazon, Alibaba
...
• Effective contribution of the user community to the success of Jakarta
EE
Challenges
Conclusion
Thank you!

More Related Content

PDF
JavaCro'14 - Drools Decision tables – form of human-readable rules – Dragan J...
PPTX
Appium banking automation
DOCX
Amol_Koshti_04May16
PPTX
Java Tweet for Beer! Chopeira controlada com Java, JavaFX, e IoT!
PDF
Application Architecture Trends
PDF
Tnt 2020-jf-james
PDF
Cloud native java are we there yet go tech world 2019
PDF
LJC 2018 - PEAT UK - Java EE - Ah, ah, ah! Staying Alive!
JavaCro'14 - Drools Decision tables – form of human-readable rules – Dragan J...
Appium banking automation
Amol_Koshti_04May16
Java Tweet for Beer! Chopeira controlada com Java, JavaFX, e IoT!
Application Architecture Trends
Tnt 2020-jf-james
Cloud native java are we there yet go tech world 2019
LJC 2018 - PEAT UK - Java EE - Ah, ah, ah! Staying Alive!

Similar to Talk Oracle Code One 2019 (20)

ODP
Enterprise Java in 2012 and Beyond, by Juergen Hoeller
PDF
Java in the age of containers - JUG Frankfurt/M
PPTX
Seven Points for Applying Java EE 7
DOCX
PDF
Enterprise java unit-1_chapter-1
PPTX
Understanding Microservices
PDF
J2EE Technology in Practice Building Business Applications with the Java 2 Pl...
PPT
Introduction to java_ee
PPTX
Migration from Java EE to JakartaEE 10 - Challenges & Opportunities
PDF
Summer training java
PDF
Java in the Age of Containers and Serverless
PPT
Java application server in the cloud
PDF
JavaOne 2010 Keynote
PDF
Red Hat Java Update and Quarkus Introduction
PDF
J2EE Technology in Practice Building Business Applications with the Java 2 Pl...
PDF
History of Java 1/2
PDF
RedHat Summit 2008 - Virtualizing Java applications leveraging JBoss, RedHat ...
PDF
Java in web 2 0 presentation
PDF
Java in web 2 0 presentation
PDF
Java™ in Web 2.0
Enterprise Java in 2012 and Beyond, by Juergen Hoeller
Java in the age of containers - JUG Frankfurt/M
Seven Points for Applying Java EE 7
Enterprise java unit-1_chapter-1
Understanding Microservices
J2EE Technology in Practice Building Business Applications with the Java 2 Pl...
Introduction to java_ee
Migration from Java EE to JakartaEE 10 - Challenges & Opportunities
Summer training java
Java in the Age of Containers and Serverless
Java application server in the cloud
JavaOne 2010 Keynote
Red Hat Java Update and Quarkus Introduction
J2EE Technology in Practice Building Business Applications with the Java 2 Pl...
History of Java 1/2
RedHat Summit 2008 - Virtualizing Java applications leveraging JBoss, RedHat ...
Java in web 2 0 presentation
Java in web 2 0 presentation
Java™ in Web 2.0
Ad

More from Jean-Francois James (6)

PDF
When GenAI meets with Java with Quarkus and langchain4j
PPTX
Loom promises: be there!
PDF
LyonJUG-2023-v1.0.pdf
PDF
ParisJUG-2022-v0.4.pdf
PDF
Boost your APIs with GraphQL
PDF
Boost your API with GraphQL
When GenAI meets with Java with Quarkus and langchain4j
Loom promises: be there!
LyonJUG-2023-v1.0.pdf
ParisJUG-2022-v0.4.pdf
Boost your APIs with GraphQL
Boost your API with GraphQL
Ad

Recently uploaded (20)

PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
top salesforce developer skills in 2025.pdf
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Digital Systems & Binary Numbers (comprehensive )
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PPTX
history of c programming in notes for students .pptx
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
System and Network Administration Chapter 2
PPTX
assetexplorer- product-overview - presentation
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPT
Introduction Database Management System for Course Database
PPTX
Operating system designcfffgfgggggggvggggggggg
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
How to Choose the Right IT Partner for Your Business in Malaysia
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Design an Analysis of Algorithms I-SECS-1021-03
top salesforce developer skills in 2025.pdf
Softaken Excel to vCard Converter Software.pdf
PTS Company Brochure 2025 (1).pdf.......
Wondershare Filmora 15 Crack With Activation Key [2025
Digital Systems & Binary Numbers (comprehensive )
2025 Textile ERP Trends: SAP, Odoo & Oracle
history of c programming in notes for students .pptx
Internet Downloader Manager (IDM) Crack 6.42 Build 41
System and Network Administration Chapter 2
assetexplorer- product-overview - presentation
CHAPTER 2 - PM Management and IT Context
Design an Analysis of Algorithms II-SECS-1021-03
Which alternative to Crystal Reports is best for small or large businesses.pdf
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Introduction Database Management System for Course Database
Operating system designcfffgfgggggggvggggggggg

Talk Oracle Code One 2019

  • 1. Java server-side 20 years old and still innovative! @jefrajames @sebi2706
  • 2. J2EE Servlet JSP EJB 1-2 JMS 1999-2003 2006 2009 2013 2017 2019 Java EE 5 Ease of Dev EJB 3 JPA JSF JAX-WS Java EE 6 CDI JAX-RS Bean Validation Web Profile Java EE 7 JBatch Web Socket JSON-P Concurrency The origins Sun Enterprise times From J2EE to Jakarta EE A user experience Java EE 8 Java SE 8 JSON-B Security Jakarta EE Java EE 8 Equivalent GlassFish 5.1 Jakarta EE 8 Eclipse Cloud times Oracle Enterprise times
  • 3. Current status Fragmented yet consistent and innovative MicroProfile 1.x Java EE 8 MicroProfile 2.x, 3.x Jakarta EE 8Java EE 7 Jakarta EE 9 MicroProfile 3.x Innovation Innovation Innovation Java SE 7,8 Java SE 9, 10, 11, 12, 13 … Amazon Coretto, Alibaba Dragonwell, AdoptOpenJdk, Azul HotSpot, OpenJ9, GraalVM Innovation
  • 4. • Standards are slow – Broad consensus and getting things right takes time • Standard don’t guarantee portability – Still better than vendor lock-in • Standards don’t have feature XYZ – The core of an ecosystem can’t be bloated or complex • Standards don’t innovate – In fact they do and over-standardizing the unproven or niche case is a bad idea • It’s just a bench of vendor experts • You can on-board Standards?
  • 5. Shifting to cloud-native applications 2006 2008 2009 2010 2011 2012 2013 2014 2015
  • 6. Shifting to cloud-native applications To Private on premise data centers Cloud platforms Bare metal infrastructure Infrastructure as code Mutualized full-blown application servers Just enough runtime Monolith Microservices SQL-only Polyglot persistency ACID transactions Eventual consistency Synchronous & imperative programming Asynchronous & functional programming Standalone applications API-first platforms From
  • 7. ● Runtime efficiency: fast startup, small system footprint, container awareness ● Built-in “Cloud-native” features: ○ Observability ○ Fault Tolerance ○ External configuration sources ○ Distributed security ○ Service mesh readiness ● Agile specification process Innovation needed!
  • 8. MicroProfile support The application servers (r)evolution Java/Jakarta 8 EE support
  • 9. Demo time! Simple Card Payment System Easy to Pay Check amount, POS, card Ask authorization If amount >100$ Fallback delegation if amount <=200$ Smart Bank Gateway Accept if amount<=500$ TomEE (Port 8082) Merchant Back Office Payment Request Payment Response Authorization Request Authorization Response
  • 10. OpenJ9? Memory footprint: -30% Startup time (optional class sharing) : -15%
  • 11. • Renew the Java EE “legacy” image • MicroProfile and Jakarta EE integration? • javax packages renaming: big bang or incremental? • Jakarta EE release cadence • Evolution of the ecosystem: IBM, Red Hat, Microsoft, Amazon, Alibaba ... • Effective contribution of the user community to the success of Jakarta EE Challenges