SlideShare una empresa de Scribd logo
1 de 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

Más contenido relacionado

La actualidad más candente

La actualidad más candente (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 a 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 a 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
 

Último

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
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
AnaAcapella
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 

Último (20)

Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
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
 
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Ữ Â...
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
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...
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
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
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).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.
 

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/