@CesarHgt @tomitribe
César Hernández
7
Recomendaciones
para migrar tus aplicaciones
a Jakarta EE con Apache TomEE
@CesarHgt @tomitribe
#1
Comprender el Contexto
@CesarHgt @tomitribe
Contexto
● Enfoque (DDA)
○ ¿De donde vengo?
○ ¿Donde estoy?
○ ¿A donde voy?
● Técnico / Estratégico / negocio, etc.
● Arquitectura Software
● Infraestructura
● Selecciona el alcance
@CesarHgt @tomitribe
https://en.wikipedia.org/wiki/Service-oriented_architecture
https://12factor.net/
https://martinfowler.com/articles/microservices.html
@CesarHgt @tomitribe
¿Cloud Native... Java?
https://landscape.cncf.io/
@CesarHgt @tomitribe
#2
Analiza el impacto de
javax.* a jakarta.*
@CesarHgt @tomitribe
Jakarta EE 9.1
● javax.* namespace ya no es válido;
migrar a jakarta.*
● Soporte para Java SE 11
● Plataforma para innovación
● Baja barrera de entrada
● Fácil migración
jakarta.ee/release/9.1
@CesarHgt @tomitribe
El namespace javax.*
• Oracle decide restringir 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
https://www.tomitribe.com/jakarta/ns/poll/vote
@CesarHgt @tomitribe
javax.* a jakarta.* namespace
https://jakarta.ee/resources/JakartaEE-Datasheet-July172020_final.pdf
@CesarHgt @tomitribe
# 3
Dos enfoques para realizar la migración
@CesarHgt @tomitribe
● Apache Tomcat migration tool for Jakarta EE
○ Migra aplicaciones que corren en Apache Tomcat 9 a Apache Tomcat 10
○ https://github.com/apache/tomcat-jakartaee-migration
● Eclipse Transformer
○ Mutación de archivos JAR o WAR
○ https://projects.eclipse.org/projects/technology.transformer
● Tomitribe fork Transformer Maven Plugin
○ https://github.com/tomitribe/transformer
Enfoque a nível de bytecode
@CesarHgt @tomitribe
Apache Tomcat migration tool for Jakarta EE
Descargar https://tomcat.apache.org/download-migration.cgi
java -jar jakartaee-migration-*-shaded.jar <origen> <destino>
@CesarHgt @tomitribe
● Eclipse Transformer
○ Mutación de archivos JAR o WAR
○ https://projects.eclipse.org/projects/technology.transformer
● Apache Tomcat migration tool for Jakarta EE
○ Migra aplicaciones que corren en Apache Tomcat 9 a Apache Tomcat 10
○ https://github.com/apache/tomcat-jakartaee-migration
● Tomitribe fork Transformer Maven Plugin
○ https://github.com/tomitribe/transformer
Enfoque a nível de bytecode
@CesarHgt @tomitribe
Tomitribe fork Transformer Maven Plugin
Agrega a tu pom.xml el plugin
<plugin>
<groupId>org.tomitribe.transformer</groupId>
<artifactId>org.eclipse.transformer.maven</artifactId>
<version>0.3.0-SNAPSHOT</version>
<configuration>
<classifier>jakartaee9</classifier>
</configuration>
<executions>
<execution>
<goals>
<goal>run</goal>
</goals>
<phase>package</phase>
</execution>
</executions>
</plugin>
@CesarHgt @tomitribe
● IDE, bash, etc.
Enfoque a nível de código
egrep -lRZ 'javax' . | xargs -0 -l sed -i -e 's/javax/jakarta/g'
@CesarHgt @tomitribe
IDE
@CesarHgt @tomitribe
IDE
@CesarHgt @tomitribe
# 4
Automatiza tu entorno local
@CesarHgt @tomitribe
● Apache Tomcat + Java EE = Apache TomEE
● Jakarta EE 9.1 Web Profile compatible
● Construido con componentes Apache
● MicroProfile compliant
● Footprint: 30MB zip, 100~MB memoria
● TomEE 9.0.0-M7 (javax -> jakarta & Java 11)
tomee.apache.org
@CesarHgt @tomitribe
tomitribe.com/blog/apache-tomee-jakarta-ee-certified-after-10-years
@CesarHgt @tomitribe
● Forma más rápida de descargar, instalar y ejecutar TomEE con o sin
aplicaciones web
● Altamente configurable para entornos de CI
● tomee.apache.org/latest/docs/developer/tools/maven-plugins.html
$ mvn clean install tomee
TomEE Maven Plugin
@CesarHgt @tomitribe
tomee-maven-plugin
Agrega a tu pom.xml el plugin
<plugin>
<groupId>org.apache.tomee.maven</groupId>
<artifactId>tomee-maven-plugin</artifactId>
<version>8.0.5</version>
<configuration>
<tomeeVersion>9.0.0-M3</tomeeVersion>
<tomeeGroupId>org.apache.tomee.jakarta</tomeeGroupId>
<tomeeClassifier>plume</tomeeClassifier>
<warFile>
${project.build.directory}/javaee-tomee-demo-jakartaee9-1.0.0.war
</warFile>
</configuration>
</plugin>
@CesarHgt @tomitribe
#5
Aplicar Integración
y
Entrega contínua
@CesarHgt @tomitribe
Apoyo en CD & CI
● Reducción en costo en detección de errores
● Mejora la trazabilidad
● Reduce la deuda técnica
● Nos prepara para el futuro
http://corpsite-blog.s3.amazonaws.com/blog/wp-content/uploads/2014/10/Screen-Shot-2014-10-21-at-10.35.35-AM-4061918db9a7d7de7a7ccc9587164f58.png
@CesarHgt @tomitribe
https://landscape.cd.foundation/
@CesarHgt @tomitribe
#6
Aprender para contribuir
@CesarHgt @tomitribe
#7
Contribuir para aprender
@CesarHgt @tomitribe
https://world-wide-jugs.github.io/GlobalWWJugs/
@CesarHgt @tomitribe
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
@CesarHgt @tomitribe
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
@CesarHgt @tomitribe
● https://tomee.apache.org/docs.html
● https://itnext.io/deploying-jakarta-ee-9-applications-to-apache-tomee-
e1a9b9399d9b
● https://www.tomitribe.com/jakarta/ns/poll/vote
● https://www.agilejava.eu/2021/01/22/migration-guide/
● https://github.com/hantsy/jakartaee9-starter-boilerplate/blob/master/
docs/deploy-tomee.md
Resources
@CesarHgt @tomitribe
Gracias
César Hernández
7 Recomendaciones
para migrar tus aplicaciones
a Jakarta EE con Apache TomEE

Más contenido relacionado

PPSX
Cáncer gástrico
PPTX
Cirugia del colon Jonathan Molina
PPTX
PATOLOGÍAS QUIRÚRGICAS DEL HIGADO
PPTX
SEMINARIO DE EVENTRACION Y EVISCERACION.pptx
PDF
Coledocolitiasis
PPT
ERGE Enfermedad por reflujo gastroesofagico
PPTX
Colecistectomia laparoscopica Ana Wald
Cáncer gástrico
Cirugia del colon Jonathan Molina
PATOLOGÍAS QUIRÚRGICAS DEL HIGADO
SEMINARIO DE EVENTRACION Y EVISCERACION.pptx
Coledocolitiasis
ERGE Enfermedad por reflujo gastroesofagico
Colecistectomia laparoscopica Ana Wald

La actualidad más candente (20)

PPTX
Colitis ulcerativa
PPTX
manejo del muñon.pptx
PDF
PATOLOGIA VASCULAR. ANEURISMAS Y PSEUDOANEURISMAS.pdf
PDF
Abordajes vasculares eeii
PPT
Drenajes Tecnica Qx
PPT
Cistostomia
PPTX
Gastrostomías y yeyunostomías
PDF
fistulas biliares
PDF
Ulcera peptica perforada
PPTX
anatomia del torax en cirugia
PPTX
Clase de trauma abdominal
PPTX
Abdomen agudo quirurgico inflamatorio y perforativo
PPTX
Dispositivos supragloticos copy.pptx
PPT
Sindrome Compartimental Abdominal
PPTX
Colecistectomía laparoscópica
PPTX
Lesiones de intestino delgado y manejo quirurgico
PPTX
Sepsis abdominal
PPTX
Higado vias biliares y pancreas
PPTX
Trauma Esofagico
PPT
Hipertension abdominal
Colitis ulcerativa
manejo del muñon.pptx
PATOLOGIA VASCULAR. ANEURISMAS Y PSEUDOANEURISMAS.pdf
Abordajes vasculares eeii
Drenajes Tecnica Qx
Cistostomia
Gastrostomías y yeyunostomías
fistulas biliares
Ulcera peptica perforada
anatomia del torax en cirugia
Clase de trauma abdominal
Abdomen agudo quirurgico inflamatorio y perforativo
Dispositivos supragloticos copy.pptx
Sindrome Compartimental Abdominal
Colecistectomía laparoscópica
Lesiones de intestino delgado y manejo quirurgico
Sepsis abdominal
Higado vias biliares y pancreas
Trauma Esofagico
Hipertension abdominal
Publicidad

Similar a 7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache TomEEl - LAOUC 2021 (20)

PPTX
Turbogears
PDF
Semana 2 Configuración entorno de desarrollo
ODP
Grails 2013 - PUCMM - Santiago - Sistemas
PDF
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
PPTX
Scraping avanzado o Cómo hacer de internet tu base de datos #seoplus2018
PDF
PPTX
CrossDvlpu - REACT para desarrolladores de ASP.NET
PPTX
Cross development - React para desarrolladores de asp.net
PDF
Entonamiento y perfilado de Drupal
PDF
Primeros pasos Symfony PHPVigo
PDF
Rompiendo paradigmas
PPTX
Lo que tienes que saber de Dart para Backend, frontend y Mobile..pptx
PDF
Desarrollo rápido de apps web con laravel - DevAcademy
PDF
Desarrollo de apps móviles con Apache Cordova
PDF
MobileCONGalicia Introducción a Android
PDF
Timerepublik
PDF
Zend framework: Toma el control
PPTX
Git Flow y GitOps
PPTX
Los reinos de finizens - Nuestro stark tecnológico
Turbogears
Semana 2 Configuración entorno de desarrollo
Grails 2013 - PUCMM - Santiago - Sistemas
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
Scraping avanzado o Cómo hacer de internet tu base de datos #seoplus2018
CrossDvlpu - REACT para desarrolladores de ASP.NET
Cross development - React para desarrolladores de asp.net
Entonamiento y perfilado de Drupal
Primeros pasos Symfony PHPVigo
Rompiendo paradigmas
Lo que tienes que saber de Dart para Backend, frontend y Mobile..pptx
Desarrollo rápido de apps web con laravel - DevAcademy
Desarrollo de apps móviles con Apache Cordova
MobileCONGalicia Introducción a Android
Timerepublik
Zend framework: Toma el control
Git Flow y GitOps
Los reinos de finizens - Nuestro stark tecnológico
Publicidad

Más de César Hernández (20)

PDF
Paving the road with Jakarta EE and Apache TomEE - JCON 2021
PDF
7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
PDF
Keeping brazil's medical industry safe with Micro Profile [TDC 2021]
PDF
Aprende, contribuye, y surfea Cloud Native Java - GuateJUG 2021
PDF
Paving the way with Jakarta EE and Apache TomEE - JCConf
PDF
Keeping brazil's medical industry safe with Micro Profile and JakartaEE - Jak...
PDF
Pavimentando el camino con Jakarta EE 9 y Apache TomEE
PDF
It is easy contributing to open source - JCON 2020
PDF
It is easy contributing to Open Source - ECLIPSE CON 2020
PDF
Paving the way with Jakarta EE and apache TomEE at cloudconferenceday
PDF
Pavimentando el Camino con Jakarta EE 9 y Apache TomEE 9.0.0
PDF
Creando microservicios con java micro profile y tomee - CUNORI 2020
PDF
Paving the way with Jakarta EE and Apache TomEE - itkonekt 2020
PDF
Creando microservicios con Java MicroProfile y TomEE - OGBT
PDF
Creando microservicios con Java, Microprofile y TomEE - Baranquilla JUG
PDF
Creando microservicios con Java y Microprofile - Nicaragua JUG
PDF
Keeping brazil's medical industry safe with Micro Profile and JakartaEE - Jak...
PDF
Es fácil contribuir al open source - Bolivia JUG 2020
PDF
Its easy! contributing to open source - Devnexus 2020
PDF
Conviértete en un contributor de open source con apache TomEE
Paving the road with Jakarta EE and Apache TomEE - JCON 2021
7 recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
Keeping brazil's medical industry safe with Micro Profile [TDC 2021]
Aprende, contribuye, y surfea Cloud Native Java - GuateJUG 2021
Paving the way with Jakarta EE and Apache TomEE - JCConf
Keeping brazil's medical industry safe with Micro Profile and JakartaEE - Jak...
Pavimentando el camino con Jakarta EE 9 y Apache TomEE
It is easy contributing to open source - JCON 2020
It is easy contributing to Open Source - ECLIPSE CON 2020
Paving the way with Jakarta EE and apache TomEE at cloudconferenceday
Pavimentando el Camino con Jakarta EE 9 y Apache TomEE 9.0.0
Creando microservicios con java micro profile y tomee - CUNORI 2020
Paving the way with Jakarta EE and Apache TomEE - itkonekt 2020
Creando microservicios con Java MicroProfile y TomEE - OGBT
Creando microservicios con Java, Microprofile y TomEE - Baranquilla JUG
Creando microservicios con Java y Microprofile - Nicaragua JUG
Keeping brazil's medical industry safe with Micro Profile and JakartaEE - Jak...
Es fácil contribuir al open source - Bolivia JUG 2020
Its easy! contributing to open source - Devnexus 2020
Conviértete en un contributor de open source con apache TomEE

Último (20)

DOCX
TRABAJO GRUPAL (5) (1).docxsjsjskskksksksks
PPTX
Uso responsable de la tecnología - EEST N°1
PDF
Guía_de_implementación_Marco_de_gobierno_y_gestión_de_TI_Universidades.pdf
PDF
TRABAJO DE TECNOLOGIA.pdf...........................
PDF
0007_PPT_DefinicionesDeDataMining_201_v1-0.pdf
PPTX
Historia Inteligencia Artificial Ana Romero.pptx
PDF
Taller tecnológico Michelle lobo Velasquez
PPTX
Curso de generación de energía mediante sistemas solares
DOCX
Trabajo informatica joel torres 10-.....................
PDF
capacitación de aire acondicionado Bgh r 410
PDF
Estrategia de Apoyo de Daylin Castaño (5).pdf
PDF
Distribucion de frecuencia exel (1).pdf
PPTX
Tema 1 Taller de tecnologia y proceso tecnologico.pptx
PPTX
ccna: redes de nat ipv4 stharlling cande
PPTX
ccna: redes de nat ipv4 stharlling cande
DOCX
TRABAJO GRUPAL (5) (1).docxsjjsjsksksksksk
DOCX
Trabajo grupal.docxjsjsjsksjsjsskksjsjsjsj
PPTX
Mecanismos-de-Propagacion de ondas electromagneticas
DOCX
TRABAJO GRUPAL (5) (1).docxjsjsjskskksksk
PPTX
Diapositivas Borrador Rocha Jauregui David Paolo (3).pptx
TRABAJO GRUPAL (5) (1).docxsjsjskskksksksks
Uso responsable de la tecnología - EEST N°1
Guía_de_implementación_Marco_de_gobierno_y_gestión_de_TI_Universidades.pdf
TRABAJO DE TECNOLOGIA.pdf...........................
0007_PPT_DefinicionesDeDataMining_201_v1-0.pdf
Historia Inteligencia Artificial Ana Romero.pptx
Taller tecnológico Michelle lobo Velasquez
Curso de generación de energía mediante sistemas solares
Trabajo informatica joel torres 10-.....................
capacitación de aire acondicionado Bgh r 410
Estrategia de Apoyo de Daylin Castaño (5).pdf
Distribucion de frecuencia exel (1).pdf
Tema 1 Taller de tecnologia y proceso tecnologico.pptx
ccna: redes de nat ipv4 stharlling cande
ccna: redes de nat ipv4 stharlling cande
TRABAJO GRUPAL (5) (1).docxsjjsjsksksksksk
Trabajo grupal.docxjsjsjsksjsjsskksjsjsjsj
Mecanismos-de-Propagacion de ondas electromagneticas
TRABAJO GRUPAL (5) (1).docxjsjsjskskksksk
Diapositivas Borrador Rocha Jauregui David Paolo (3).pptx

7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache TomEEl - LAOUC 2021