Skip to content

Spring Integration 5.x to 6.0 Migration Guide

Artem Bilan edited this page Nov 3, 2021 · 18 revisions

Table of Contents

Introduction

First of all it is Java 17 base line for all the code based including main. This also include Kotlin 1.6 upgrade for Java 17 compatibility. Along side with the Spring Framework 6.0 upgrade, we moved to Jakarta EE 9 and respective fresh library dependencies.

Jakarta Namespace

Many Java EE 8 libraries have moved to jakarta namespace in Jakarta EE 9. This includes JPA, JMS, Mail, JTA, Servlet etc. Therefore imports in the target projects have to be changed from the javax to jakarta. For example javax.mail.Message to jakarta.mail.Message, when spring-integration-mail module is used for integration flows with Mail channel adapters. And so on for spring-integration-jpa, spring-integration-jms, spring-integration-ws, spring-integration-http, spring-integration-websocket modules. In most cases this is not necessary because Spring Integration encapsulates low-level API in its channel adapters and supporting components.

No spring-integration-rmi

The deprecated before spring-integration-rmi module was removed having a lot of network vulnerabilities. The replacement now days is REST, WebSockets, RSockets or gRPC.