SlideShare a Scribd company logo
1 of 22
Bootstrapping a simple
Enterprise Application with Java
EE successor, Jakarta EE 8
Buhake Sindi
Who am I?
Who am I?
• Enterprise Java Developer & Engineer
• 14 years coding (and virtually no sleep)
• Jakarta EE Ambassador (formerly known as Java EE Guardian) (https://jakartaee-
ambassadors.io/who-we-are/)
• Blogger: A Developer’s Enterprise Log - https://deventerpriselog.blogspot.com/
• I code on my spare time (currently writing my own Neural Network)
• Beatmaker (when time permits):
• Twitter: @EliteGentleman
• Instagram: @EliteGentleman_
• LinkedIn: Buhake Sindi
• PS: I am on the market!
What I do?
Making Sense of IT Podcast
• Launched January 2020
• Talking about subject matters that are important in our lives/careers
but we seldom talk about it.
• E.g., burnouts, negotiating salaries, money, work-life balance,
micromanagement, etc.
• Available wherever you listen
• On Apple Podcast, Google Podcast, Spotify
• Twitter: @_MakingSenseOf_
• Facebook: Making Sense of It Podcast
Devoxx4Kids South Africa
• Started in 2017
• Fully registered Non-Profit:
• NPC (reg no: 2019/51866/08)
• NPO (reg no: 241-758 NPO)
• Objectives: Introducing kids to programming and robotics in a fun way (basically STEM)
• Host a weekend coding event where kids get to code for a day
• Nationwide: Hosted already in JHB & CPT. Durban, coming soon.
• Looking for instructors: developers with ideas to teach kids (see me afterwards).
• Looking for sponsors (http://www.devoxx4kids.org/south-africa/help-us/)
• Social media (FB, Twitter, Instagram): @Devoxx4KidsZAF
• YouTube: Devoxx4Kids South Africa
• Web: http://www.devoxx4kids.org/south-africa/
• Email: devoxx4kidszaf@gmail.com
Brief History
• Under Oracle, Java EE wasn’t flexible, barely adopting agile processes
and more open.
• 12 September 2017: Oracle announced that it’ll submit the Java EE
project to Eclipse Foundation.
• Eclipse foundation announced the new top-level project as Eclise Enterprise
for Java (EE4J)
• 26 February 2018, Java EE was rebranded to Jakarta EE
• Oracle owns and trademark the Java name.
• 10 September 2019, Jakarta EE 8 is officially released.
Jakarta EE 8
• Released, 10 September 2019 (https://jakarta.ee/release/)
• Full compatibility with Java EE 8 specification
• No API or namespace changes
• Compatible Products include:
• Eclipse Glassfish, version 5.1.0 and higher
• IBM Open Liberty, version 19.0.0.6 and higher
• Payara Server, version 5.193.1 and higher (Full Profile)
• Redhat Wildfly, version 18.0.0.Final and higher
• More info: https://jakarta.ee/compatibility/
Jakarta EE 9
• 16 January 2019, Jakarta EE Working Group approved Jakarta EE 9 Release
Plan (https://eclipse-ee4j.github.io/jakartaee-
platform/jakartaee9/JakartaEE9ReleasePlan)
• Big changes:
• javax.* namespace to be moved to jakarta.* namespace.
• Removing unwanted or deprecated specifications
• Jakarta EE 9 won’t impose backward compatibility.
• Individual Specification Version. Jakarta EE 9 will release MAJOR version of the
specification document. Thus, JPA 2.x -> JPA 3.0
• JSF 3.0 won’t be backward compatible with JSF 1.x (see first 2 sub-bullets above)
• Java SE 8 compatible. Jakarta EE 9 Web and Full Profile MUST be Java SE 11
compatible
• Possible addition of NoSQL specification: Eclipse jNoSQL
Coding using Jakarta EE 8
(tutorial with demo)
Technology used.
• Java SE 13
• Current version: 13.0.2 (as of 11 February 2020)
• Maven
• Current version: 3.6.3
• IBM OpenLiberty
• IDE of your choice (that supports at least Java SE 8 and higher)
• Latest Web Browser (of course, but not Internet Explorer)
Including Jakarta EE 8 in your project
• Import the jakarta-ee-api as a dependency in your project pom.xml
<dependency>
<groupId>jakarta.platform</groupId>
<artifactId>jakarta.jakartaee-api</artifactId>
<version>8.0.0</version>
<scope>provided</scope>
</dependency>
Eclipse Microprofile
• An Open Source community specification for the Enterprise Java Microservices Architecture.
• Current release: version 3.2
• Aligned with Java EE 8
• Built from lightweight Java EE Web Profile:
• CDI 1.2
• JAX-RS 2.0 (Java API for RESTful Web Services)
• JSON-P 1.0 (Java API for JSON Processing)
• Common Annotations for Java Platforms 1.2
• Additional specifications to make your microservice ready for the cloud:
• Configuration Management
• Fault Tolerance
• Health Check
• JWT Authentication
• Metrics
• OpenAPI
• OpenTracing
• Type-safe REST Client
• Web: http://microprofile.io/
Microservice with Eclipse Microprofile
• Import the microprofile as a dependency on your project pom.xml
<dependency>
<groupId>org.eclipse.microprofile</groupId>
<artifactId>microprofile</artifactId>
<version>3.2</version>
<type>pom</type>
<scope>provided</scope>
</dependency>
Unit/Integration Testing
• jUnit 5 (jUnit Jupiter)
• Microshed Testing
Demo
Resources & Links
• Code (used for demo):
https://github.com/TheEliteGentleman/jakartaee8-demo
• Jakarta EE: https://jakarta.ee/
• Eclipse Microprofile: https://microprofile.io/
• Eclipse jNoSQL: https://www.jnosql.org/
• IBM OpenLiberty: https://openliberty.io/
Questions?
Thank you

More Related Content

What's hot

What's hot (20)

Docker for .NET Developers
Docker for .NET DevelopersDocker for .NET Developers
Docker for .NET Developers
 
How to contribute for Docker Labs
How to contribute for Docker LabsHow to contribute for Docker Labs
How to contribute for Docker Labs
 
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day ThailandCI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
 
codemotion-docker-2014
codemotion-docker-2014codemotion-docker-2014
codemotion-docker-2014
 
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013 .Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
.Net OSS Ci & CD with Jenkins - JUC ISRAEL 2013
 
K8s Cluster Build
K8s Cluster BuildK8s Cluster Build
K8s Cluster Build
 
Jenkins CI presentation
Jenkins CI presentationJenkins CI presentation
Jenkins CI presentation
 
JUC Europe 2015: Plugin Development with Gradle and Groovy
JUC Europe 2015: Plugin Development with Gradle and GroovyJUC Europe 2015: Plugin Development with Gradle and Groovy
JUC Europe 2015: Plugin Development with Gradle and Groovy
 
docker : how to deploy Digital Experience in a container drinking a cup of co...
docker : how to deploy Digital Experience in a container drinking a cup of co...docker : how to deploy Digital Experience in a container drinking a cup of co...
docker : how to deploy Digital Experience in a container drinking a cup of co...
 
Maven beyond hello_world
Maven beyond hello_worldMaven beyond hello_world
Maven beyond hello_world
 
An Introduction To Jenkins
An Introduction To JenkinsAn Introduction To Jenkins
An Introduction To Jenkins
 
Netflix and Containers: Not A Stranger Thing
Netflix and Containers:  Not A Stranger ThingNetflix and Containers:  Not A Stranger Thing
Netflix and Containers: Not A Stranger Thing
 
Chapter 1 java
Chapter 1 java Chapter 1 java
Chapter 1 java
 
Building Microservices with Jakarta EE and MicroProfile - EclipseCon 2019
Building Microservices with Jakarta EE and MicroProfile - EclipseCon 2019Building Microservices with Jakarta EE and MicroProfile - EclipseCon 2019
Building Microservices with Jakarta EE and MicroProfile - EclipseCon 2019
 
Docker crash course
Docker crash courseDocker crash course
Docker crash course
 
Jenkins Overview
Jenkins OverviewJenkins Overview
Jenkins Overview
 
Infrastructure as Data with Ansible
Infrastructure as Data with AnsibleInfrastructure as Data with Ansible
Infrastructure as Data with Ansible
 
Docker Basics
Docker BasicsDocker Basics
Docker Basics
 
Docker for .net developer
Docker for .net developerDocker for .net developer
Docker for .net developer
 
Jenkins for java world
Jenkins for java worldJenkins for java world
Jenkins for java world
 

Similar to Bootstrapping a simple enterprise application with Java EE successor, Jakarta EE 8.

Above and Beyond JDK 9, 10, 11, 12... - Branko Mihaljević and Martin Žagar on...
Above and Beyond JDK 9, 10, 11, 12... - Branko Mihaljević and Martin Žagar on...Above and Beyond JDK 9, 10, 11, 12... - Branko Mihaljević and Martin Žagar on...
Above and Beyond JDK 9, 10, 11, 12... - Branko Mihaljević and Martin Žagar on...
HUJAK - Hrvatska udruga Java korisnika / Croatian Java User Association
 
MOBILE QUESTIONS & ANSWER WEBSITE
MOBILE QUESTIONS & ANSWER WEBSITEMOBILE QUESTIONS & ANSWER WEBSITE
MOBILE QUESTIONS & ANSWER WEBSITE
Vishal Mittal
 
Java EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010Java EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010
Codecamp Romania
 
Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807
rehoscript
 

Similar to Bootstrapping a simple enterprise application with Java EE successor, Jakarta EE 8. (20)

From Legacy to Legendary - Jakarta EE's Evolution in the Modern Era
From Legacy to Legendary - Jakarta EE's Evolution in the Modern EraFrom Legacy to Legendary - Jakarta EE's Evolution in the Modern Era
From Legacy to Legendary - Jakarta EE's Evolution in the Modern Era
 
From Legacy to Legendary - Jakarta EE's Evolution in the Modern Era
From Legacy to Legendary - Jakarta EE's Evolution in the Modern EraFrom Legacy to Legendary - Jakarta EE's Evolution in the Modern Era
From Legacy to Legendary - Jakarta EE's Evolution in the Modern Era
 
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
 
Above and Beyond JDK 9, 10, 11, 12... - Branko Mihaljević and Martin Žagar on...
Above and Beyond JDK 9, 10, 11, 12... - Branko Mihaljević and Martin Žagar on...Above and Beyond JDK 9, 10, 11, 12... - Branko Mihaljević and Martin Žagar on...
Above and Beyond JDK 9, 10, 11, 12... - Branko Mihaljević and Martin Žagar on...
 
MOBILE QUESTIONS & ANSWER WEBSITE
MOBILE QUESTIONS & ANSWER WEBSITEMOBILE QUESTIONS & ANSWER WEBSITE
MOBILE QUESTIONS & ANSWER WEBSITE
 
OpenNTF Webinar 2022-08 - XPages Jakarta EE Support in Practice
OpenNTF Webinar 2022-08 - XPages Jakarta EE Support in PracticeOpenNTF Webinar 2022-08 - XPages Jakarta EE Support in Practice
OpenNTF Webinar 2022-08 - XPages Jakarta EE Support in Practice
 
Developing Java Microservices Fast with Open Liberty
Developing Java Microservices Fast with Open LibertyDeveloping Java Microservices Fast with Open Liberty
Developing Java Microservices Fast with Open Liberty
 
Voxxed Athens 2018 - Java EE is dead Long live jakarta EE!
Voxxed Athens 2018 - Java EE is dead Long live jakarta EE!Voxxed Athens 2018 - Java EE is dead Long live jakarta EE!
Voxxed Athens 2018 - Java EE is dead Long live jakarta EE!
 
Java EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010Java EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010
 
Enterprise java unit-1_chapter-1
Enterprise java unit-1_chapter-1Enterprise java unit-1_chapter-1
Enterprise java unit-1_chapter-1
 
Jakarta EE 最前線 - Jakarta EEの現在、ロードマップなど
Jakarta EE 最前線 - Jakarta EEの現在、ロードマップなどJakarta EE 最前線 - Jakarta EEの現在、ロードマップなど
Jakarta EE 最前線 - Jakarta EEの現在、ロードマップなど
 
Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807Virtual dev-day-java7-keynote-1641807
Virtual dev-day-java7-keynote-1641807
 
Play 2 Java Framework with TDD
Play 2 Java Framework with TDDPlay 2 Java Framework with TDD
Play 2 Java Framework with TDD
 
Play2 Java
Play2 JavaPlay2 Java
Play2 Java
 
Resume & CV
Resume & CVResume & CV
Resume & CV
 
Java Desktop 2019
Java Desktop 2019Java Desktop 2019
Java Desktop 2019
 
Java EE 7 Soup to Nuts at JavaOne 2014
Java EE 7 Soup to Nuts at JavaOne 2014Java EE 7 Soup to Nuts at JavaOne 2014
Java EE 7 Soup to Nuts at JavaOne 2014
 
MicroProfile for MicroServices
MicroProfile for MicroServicesMicroProfile for MicroServices
MicroProfile for MicroServices
 
Jakarta EE: Today and Tomorrow
Jakarta EE: Today and TomorrowJakarta EE: Today and Tomorrow
Jakarta EE: Today and Tomorrow
 
Java Community News - September 2015
Java Community News - September 2015Java Community News - September 2015
Java Community News - September 2015
 

Recently uploaded

Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 

Recently uploaded (20)

SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 

Bootstrapping a simple enterprise application with Java EE successor, Jakarta EE 8.

  • 1. Bootstrapping a simple Enterprise Application with Java EE successor, Jakarta EE 8 Buhake Sindi
  • 3. Who am I? • Enterprise Java Developer & Engineer • 14 years coding (and virtually no sleep) • Jakarta EE Ambassador (formerly known as Java EE Guardian) (https://jakartaee- ambassadors.io/who-we-are/) • Blogger: A Developer’s Enterprise Log - https://deventerpriselog.blogspot.com/ • I code on my spare time (currently writing my own Neural Network) • Beatmaker (when time permits): • Twitter: @EliteGentleman • Instagram: @EliteGentleman_ • LinkedIn: Buhake Sindi • PS: I am on the market!
  • 5.
  • 6. Making Sense of IT Podcast • Launched January 2020 • Talking about subject matters that are important in our lives/careers but we seldom talk about it. • E.g., burnouts, negotiating salaries, money, work-life balance, micromanagement, etc. • Available wherever you listen • On Apple Podcast, Google Podcast, Spotify • Twitter: @_MakingSenseOf_ • Facebook: Making Sense of It Podcast
  • 7.
  • 8. Devoxx4Kids South Africa • Started in 2017 • Fully registered Non-Profit: • NPC (reg no: 2019/51866/08) • NPO (reg no: 241-758 NPO) • Objectives: Introducing kids to programming and robotics in a fun way (basically STEM) • Host a weekend coding event where kids get to code for a day • Nationwide: Hosted already in JHB & CPT. Durban, coming soon. • Looking for instructors: developers with ideas to teach kids (see me afterwards). • Looking for sponsors (http://www.devoxx4kids.org/south-africa/help-us/) • Social media (FB, Twitter, Instagram): @Devoxx4KidsZAF • YouTube: Devoxx4Kids South Africa • Web: http://www.devoxx4kids.org/south-africa/ • Email: devoxx4kidszaf@gmail.com
  • 9.
  • 10. Brief History • Under Oracle, Java EE wasn’t flexible, barely adopting agile processes and more open. • 12 September 2017: Oracle announced that it’ll submit the Java EE project to Eclipse Foundation. • Eclipse foundation announced the new top-level project as Eclise Enterprise for Java (EE4J) • 26 February 2018, Java EE was rebranded to Jakarta EE • Oracle owns and trademark the Java name. • 10 September 2019, Jakarta EE 8 is officially released.
  • 11. Jakarta EE 8 • Released, 10 September 2019 (https://jakarta.ee/release/) • Full compatibility with Java EE 8 specification • No API or namespace changes • Compatible Products include: • Eclipse Glassfish, version 5.1.0 and higher • IBM Open Liberty, version 19.0.0.6 and higher • Payara Server, version 5.193.1 and higher (Full Profile) • Redhat Wildfly, version 18.0.0.Final and higher • More info: https://jakarta.ee/compatibility/
  • 12. Jakarta EE 9 • 16 January 2019, Jakarta EE Working Group approved Jakarta EE 9 Release Plan (https://eclipse-ee4j.github.io/jakartaee- platform/jakartaee9/JakartaEE9ReleasePlan) • Big changes: • javax.* namespace to be moved to jakarta.* namespace. • Removing unwanted or deprecated specifications • Jakarta EE 9 won’t impose backward compatibility. • Individual Specification Version. Jakarta EE 9 will release MAJOR version of the specification document. Thus, JPA 2.x -> JPA 3.0 • JSF 3.0 won’t be backward compatible with JSF 1.x (see first 2 sub-bullets above) • Java SE 8 compatible. Jakarta EE 9 Web and Full Profile MUST be Java SE 11 compatible • Possible addition of NoSQL specification: Eclipse jNoSQL
  • 13. Coding using Jakarta EE 8 (tutorial with demo)
  • 14. Technology used. • Java SE 13 • Current version: 13.0.2 (as of 11 February 2020) • Maven • Current version: 3.6.3 • IBM OpenLiberty • IDE of your choice (that supports at least Java SE 8 and higher) • Latest Web Browser (of course, but not Internet Explorer)
  • 15. Including Jakarta EE 8 in your project • Import the jakarta-ee-api as a dependency in your project pom.xml <dependency> <groupId>jakarta.platform</groupId> <artifactId>jakarta.jakartaee-api</artifactId> <version>8.0.0</version> <scope>provided</scope> </dependency>
  • 16. Eclipse Microprofile • An Open Source community specification for the Enterprise Java Microservices Architecture. • Current release: version 3.2 • Aligned with Java EE 8 • Built from lightweight Java EE Web Profile: • CDI 1.2 • JAX-RS 2.0 (Java API for RESTful Web Services) • JSON-P 1.0 (Java API for JSON Processing) • Common Annotations for Java Platforms 1.2 • Additional specifications to make your microservice ready for the cloud: • Configuration Management • Fault Tolerance • Health Check • JWT Authentication • Metrics • OpenAPI • OpenTracing • Type-safe REST Client • Web: http://microprofile.io/
  • 17. Microservice with Eclipse Microprofile • Import the microprofile as a dependency on your project pom.xml <dependency> <groupId>org.eclipse.microprofile</groupId> <artifactId>microprofile</artifactId> <version>3.2</version> <type>pom</type> <scope>provided</scope> </dependency>
  • 18. Unit/Integration Testing • jUnit 5 (jUnit Jupiter) • Microshed Testing
  • 19. Demo
  • 20. Resources & Links • Code (used for demo): https://github.com/TheEliteGentleman/jakartaee8-demo • Jakarta EE: https://jakarta.ee/ • Eclipse Microprofile: https://microprofile.io/ • Eclipse jNoSQL: https://www.jnosql.org/ • IBM OpenLiberty: https://openliberty.io/