- The document summarizes a presentation by César Hernández on paving the road with Jakarta EE and Apache TomEE. It discusses the context of migrating from Java EE to Jakarta EE, approaches to migration including bytecode-level tools and source code tools, and how to contribute to Jakarta EE and Apache TomEE open source projects. It promotes embracing continuous integration, delivery, and sharing learning experiences to help with the migration.
8. @CesarHgt @tomitribe
#JCON2021
Jakarta EE 9.1
● javax.* namespace no longer valid;
need to use jakarta.*
● Support for Java SE 11
● Platform for innovation
● Lower Entry Barriers
● Easy Migration
jakarta.ee/release/9.1
9. @CesarHgt @tomitribe
#JCON2021
The javax.* namespace
• Oracle decides to restrict javax.* namespace
• Unchanged APIs can still use javax.* namespace
• Any other changes not allowed
• Adding a value to an enum
• Overriding/adding a method signature
• Adding default methods in interfaces
• Compensating for Java language changes
12. @CesarHgt @tomitribe
#JCON2021
● Apache Tomcat migration tool for Jakarta EE
○ Migrate Apache Tomcat 9 application to run on Apache Tomcat 10
○ https://github.com/apache/tomcat-jakartaee-migration
● Eclipse Transformer
○ Mutate individual class files from JAR o WAR
○ https://projects.eclipse.org/projects/technology.transformer
● Tomitribe Transformer Maven Plugin
○ Forked from Eclipse Transformer
○ https://github.com/tomitribe/transformer
Bytecode level approach 1/2
13. @CesarHgt @tomitribe
#JCON2021
Apache Tomcat migration tool for Jakarta EE
Download https://tomcat.apache.org/download-migration.cgi
java -jar jakartaee-migration-*-shaded.jar <input> <output>
14. @CesarHgt @tomitribe
#JCON2021
● Apache Tomcat migration tool for Jakarta EE
○ Migrate Apache Tomcat 9 application to run on Apache Tomcat 10
○ https://github.com/apache/tomcat-jakartaee-migration
● Eclipse Transformer
○ Mutate individual class files from JAR o WAR
○ https://projects.eclipse.org/projects/technology.transformer
● Tomitribe Transformer Maven Plugin
○ Forked from Eclipse Transformer
○ https://github.com/tomitribe/transformer
Bytecode level approach 2/2
22. @CesarHgt @tomitribe
#JCON2021
● fastest way to download, install, and run TomEE with or without
webapps
● CI friendly
● tomee.apache.org/latest/docs/developer/tools/maven-plugins.html
$ mvn clean install tomee
TomEE Maven Plugin
25. @CesarHgt @tomitribe
#JCON2021
Migration backbone via CD & CI
● Help to cut technical debt
● Reduce over communication between teams
● Improves visibility
● Ready for Jakarta EE 10 ?
http://corpsite-blog.s3.amazonaws.com/blog/wp-content/uploads/2014/10/Screen-Shot-2014-10-21-at-10.35.35-AM-4061918db9a7d7de7a7ccc9587164f58.png
29. @CesarHgt @tomitribe
#JCON2021
How to contribute in Jakarta EE?
• jakarta.ee/connect
○ Community, Working Group and Projects Mailing List
○ Slack, Newsletter, Blogs, Social Media
• Join Jakarta EE community meetings
• Join EE4J top project and Jakarta EE working group
• Spread the word by speaking at conferences or blogging
30. @CesarHgt @tomitribe
#JCON2021
How to contribute in TomEE?
• tomee.apache.org/community
• Share your migration takeaways
• Documentation
• Website fixes
• Code tests
• Code examples
• Coverage increase for unit, integration, performance and static tests
• Workshops