This version is still in development and is not considered stable yet. For the latest stable version, please use Spring Integration 6.3.2!

What’s New?

For those who are already familiar with Spring Integration, this chapter provides a brief overview of the new features of version 6.4.

If you are interested in the changes and features that were introduced in earlier versions, see the Change History.

What’s New in Spring Integration 6.4?

If you are interested in more details, see the Issue Tracker tickets that were resolved as part of the 6.4 development process.

In general the project has been moved to the latest dependency versions.

New Components

General Changes

Remote File Adapters Changes

The AbstractRemoteFileStreamingMessageSource has now a convenient clearFetchedCache() API to remove references from cache for not processed remote files. The references stay in cache because polling configuration does not allow to process all the fetched in one cycle, and the target SessionFactory might be changed between polling cycles, e.g. via RotatingServerAdvice.

JDBC Changes

The LobHandler (and respective API) has been deprecated for removal in Spring Framework 6.2. Respective option on JdbcMessageStore (and similar) have been deprecated as well. The byte array handling for serialized message is fully deferred to JDBC driver.

The LockRepository.delete() method return the result of removing ownership of a distributed lock. And the JdbcLockRegistry.JdbcLock.unlock() method throws ConcurrentModificationException if the ownership of the lock is expired.

ZeroMQ Changes

The outbound component ZeroMqMessageHandler (and respective API) can now bind a TCP port instead of connecting to a given URL.

Redis Changes

Instead of throwing IllegalStateException, the RedisLockRegistry.RedisLock.unlock() method throws ConcurrentModificationException if the ownership of the lock is expired.