Migration Toolkit for Applications: Use cases and migration paths

Developer-focused assessments of application portfolios

Migration Toolkit for Applications use cases and migration paths

The Migration Toolkit for Applications (MTA) contains a rich set of skill sets (rules and code hints) and supports multiple migration paths and use cases. The toolkit is highly extensible, allowing developers to either extend their existing skills sets or create their own. 

Application modernization and migration use cases

MTA supports reviewing applications compliance against JEE profiles, so that they do not contain code specific to the application server and, therefore can be migrated to JBoss EAP from competitors’ Enterprise Application Servers (e.g. Oracle® WebLogic® Server). The toolkit can also be used for reviewing the upgrades to the latest release of JBoss EAP and executing them with confidence. MTA also assesses the technologies identified within each application against those supported not just by JBoss EAP but also by JBoss WS, Red Hat’s supported build of Apache Tomcat. MTA has a comprehensive set of cloud and container readiness rules to assess applications for suitability for deployment on OpenShift. An analysis execution can assess applications for multiple targets (e.g. EAP7, cloud readiness and OpenJDK).

We've summarized the most commonly used migration paths in the following table.



Source Platform

Migration to JBoss EAP 7 OpenShift (cloud readiness) OpenJDK
8 & 11
Jakarta EE 9 Camel 3 Spring Boot in Red Hat Runtimes Quarkus Open Liberty
Oracle WebLogic Server - - - - -
IBM WebSphere Application Server - - - -
JBoss EAP 4 ✘ [1] - - - - -
JBoss EAP 5 - - - - -
JBoss EAP 6 - - - - -
JBoss EAP 7 - - - - -
Thorntail ✔ [2] - - - - - - -
Oracle JDK - - - - - -
Camel 2 - - - - -
Spring Boot - - -
Any Java application - - - - - -
Any Java EE application - - - - - - -
[1] Although MTA does not currently provide rules for this migration path, Red Hat Consulting can assist with migration from any source platform.
[2] Requires EAP Expansion Pack 2 (XP 2)


Other use cases

MTA is highly extensible, allowing developers to create their own set of rules and hints or adapt to their own needs. New transformation paths is one example. Many developers use MTA for non-migration use cases as part of their build process (via Maven plugin or Command Line Interface) in order to validate code on a regular basis against organizational standards or to ensure application portability. 

Another common use case is the enforcement of certain libraries and frameworks (use a single logging framework instead of pick-your own). Developers also leverage MTA to avoid the usage of proprietary libraries.

The Rules development guide provides instructions about how to customize existing or create new rules and rule-sets.

Ready to migrate your Java apps to containers?

Most Java applications in production today are running on virtual machines (VMs), likely on an application platform that is not container friendly. So, how can you migrate them from the current platform to containers on Kubernetes?