Release Notes - Spring Integration - Version 3.0 RC1 - HTML format

Sub-task

  • [INT-2501] - Consider how channel auto-creation can be managed globally
  • [INT-3014] - Add Redis Queue Inbound Channel Adapter
  • [INT-3015] - Add Redis Queue Outbound Channel Adapter
  • [INT-3018] - Add Namespace Support
  • [INT-3019] - Add Documentation
  • [INT-3020] - Add Tests
  • [INT-3203] - RemoteFileTemplate - Phase I
  • [INT-3204] - RemoteFileTemplate - Phase II

Bug

  • [INT-2669] - Spring Integration Javadoc API Mentions Wrong Field Name
  • [INT-2714] - On sections 16.6 and 16.7.3 appear ip_connnection_id, should be ip_connection_id
  • [INT-3024] - mongodb:outbound-channel-adapter should allow a <polller/> child element
  • [INT-3091] - File removed before SFTP gets to it; MessageDeliveryException, FileNotFoundException
  • [INT-3098] - TCPNIOConnection always report EOFException as Error
  • [INT-3144] - JMX Test Failures
  • [INT-3145] - Tests incompatible with Spring Framework 4.0
  • [INT-3146] - Tcp connection pool is not working after 1 minute
  • [INT-3147] - MetadataStore Key is named '(inner bean)'
  • [INT-3153] - Cannot read header "sequenceDetails" (or other lists) from MongoDbMessageStore
  • [INT-3162] - Make AbstractScriptExecutor as thread-safe
  • [INT-3163] - Tcp Pool Connection Not Returned to Pool After Error on Write
  • [INT-3164] - JSR223 Scripts don't care about 'refresh'
  • [INT-3171] - Increase waiting timeouts for Aggregator tests
  • [INT-3178] - TCP connections report open event before they are available
  • [INT-3180] - FtpParserInboundTests Catches Incorrect Exception
  • [INT-3181] - DuplicateKeyException using INT_CHANNEL_MESSAGE on MySQL 5.1
  • [INT-3182] - OperationInvokingMessageHandler handleRequestMessage() fails to support primitive types
  • [INT-3185] - Cast will fail when trying to use AbstractReplyProducingMessageHandler directly and using JMX
  • [INT-3186] - Avoid Double MBean When Wrapping a MessageHandler for Direct Access with JMX
  • [INT-3188] - Make Direct Invocation Tests More Robust
  • [INT-3190] - Fix Package Tangle Introduced by the Change For INT-2809
  • [INT-3191] - Fix Package Tangle
  • [INT-3196] - RedisQueueMessageDrivenAdapter - Loop after ConnectionFactory.destroy() without stop()
  • [INT-3199] - <service-activator> calls random method if none is specified
  • [INT-3209] - DefaultFileNamegenerator Parses the SpEL on Every File
  • [INT-3211] - Add Event Publishing to Intercepted TCP Connections
  • [INT-3213] - Fix Package Tangle (Header Channel Registry)
  • [INT-3214] - Event Inbound Adapter Emits Context Events When Stopped
  • [INT-3215] - Fix Redis ZSet tests from CI report
  • [INT-3216] - Possible Early Reap of Message Group

Defect

  • [INT-3077] - MongoDbMessageStore: ErrorMessage and AdviceMessage should be correctly converted to/from Store
  • [INT-3120] - Set the "writeAcceptCharset" to false by default in StringHttpConverter within the http inbound gateway
  • [INT-3135] - HTTP Adapter URI mappings are sensitive to trailing slashes
  • [INT-3138] - Delayer integration tests fail from time to time - probably a timing problem
  • [INT-3157] - Increas Delayer's integration tests timeouts and mark them with 'LongRunning' @Rule
  • [INT-3158] - Increase Delayer's Integration Tests Timeouts and Mark them with 'LongRunning' @Rule
  • [INT-3210] - Avoid reparsing SpELs on each call from ParameterSource abstraction
  • [INT-3212] - Fix failed tests on slow CI

Improvement

  • [INT-1941] - Make MetadataStores dynamically resettable on a per component bassis
  • [INT-2117] - In AbstractMessageRouter - Apply trim() to each channel names retrieved from a comma delimited String
  • [INT-2269] - Come up with the strategy for handling serialization for temp channels
  • [INT-2421] - Add "container-class" option into message-driven-channel-adapter container definition (jms module)
  • [INT-2469] - Provide Access to Additional Servlet Request Properties in HTTP HeaderMapper
  • [INT-2491] - Provide a way to pass variables to in line scripts
  • [INT-2562] - JPA Adapter: Improve "flush" behavior
  • [INT-2628] - Flexibility in the Mbean exporter naming strategy
  • [INT-2629] - Generalize Parameter Mapping Conventions for the Messaging Gateway
  • [INT-2768] - Add support to XsltPayloadTransformer for overriding default transformer
  • [INT-2809] - Coordinate JSON Transformers with AMQP JsonMessageConverter
  • [INT-2881] - JPA: Add support for setFirstResult
  • [INT-2924] - Allow Configuration of a TCP Socket Connection Timeout
  • [INT-2943] - RequestHandlerRetryAdvice wraps endpoint exception in a MessagingException, harder to do exception classifcation based retry
  • [INT-2953] - A few File handlers (maybe more) don't use BufferedInputStream
  • [INT-2961] - Make AbstractReplyProducingMessageHandler.onInit() final and have custom method like such as doCustomInit()
  • [INT-2997] - Gateway handler alias not documented
  • [INT-2998] - Add 'phase' to Abstract Adapter Parsers
  • [INT-3029] - JPA - Support Collection of Entities when Persisting Objects
  • [INT-3033] - Add support for determining topic by evaluating SpEL against the Message
  • [INT-3042] - Resequencer documentation still mentions comparator support
  • [INT-3064] - Use a Faster UUID Generator By Default
  • [INT-3069] - GatewayProxy does not keep track which method triggered the message flow
  • [INT-3117] - Allow 'reply-channel' in a Gateway Within a Chain
  • [INT-3126] - Improve documentation for ScriptVariableGenerator, especially DefaultScriptVariableGenerator
  • [INT-3129] - FTP Outbound Gateway supports local-filename-generator-expression
  • [INT-3150] - Add support for the max-number-of-results-expression
  • [INT-3152] - Skip Long Running Tests on Normal Builds
  • [INT-3166] - Improve GroovyScriptExecutingMessageProcessor performance: avoid synchronization where it is possible
  • [INT-3167] - Twitter: Make minimum wait between polls configurable
  • [INT-3175] - Add Caution About Using the Apache Pooling Connection Manager
  • [INT-3193] - Add support to "shouldFlattenKeys" configuration property in object-to-map-transformer
  • [INT-3198] - Expose RedisQueueMessageDrivenEndpoint.recoveryInterval property to the Namespace support

New Feature

  • [INT-1362] - Ability to resolve request-scoped attributes in Spring Integration SpEL expressions in a web context
  • [INT-2312] - Add support for full RESTFul request-mappings to the HTTP inbound adapters
  • [INT-2504] - FTP inbound, outbound support for folder
  • [INT-2866] - Support local-directory-expression in (S)FTP Outbound Gateway
  • [INT-2867] - Add Scripting Support for <inbound-channel-adapter/>
  • [INT-2946] - RedisInboundChannelAdapter should support subscription patterns
  • [INT-2984] - Implement channel registry for communication across decoupled dynamically deployed modules
  • [INT-3006] - Consider Adding a Mechanism to Control the number of subscribers to a DirectChannel Globally
  • [INT-3017] - Add Redis Queue Channel Adapters
  • [INT-3027] - Add Header Enrichment to <enricher/>
  • [INT-3039] - Single SFTP session to allow multiple channels
  • [INT-3044] - Register SourcePollingChannelAdapter's MessageSource as a bean with '.source' suffix alias
  • [INT-3047] - Shared Sessions in SFTP
  • [INT-3055] - The http outbound gateway is missing a URI variable provider
  • [INT-3085] - Add a Redis-backed MetadataStore
  • [INT-3088] - AbstractRemoteFileOutboundGateway - Add support for Put
  • [INT-3100] - SftpSession to expose InputStream
  • [INT-3133] - Provide a hook to easily configure custom PropertyAccessors for SpEL EvaluationContext
  • [INT-3139] - Add out-of-the-box #jsonPath() SpEL function
  • [INT-3140] - Add out-of-the-box #xpath() SpEL function
  • [INT-3142] - A flag to retain default converters when user has customized messageconverters for HttpRequestHandlingController, HttpInboundGateway
  • [INT-3143] - MongoDbMessageStore should provide a setter for messageTemplate
  • [INT-3172] - Recursive LS/MGET with (S)FTP Gateway
  • [INT-3173] - Add support explicit MetadataStore declarations instead of (or in addition to) a global one

Refactoring

  • [INT-2433] - Get rid of the wrapping MessageProcessor into another MessageProcessor
  • [INT-2528] - Remove deprecations in HTTP Adapter after upgrade to Spring 3.1.1
  • [INT-2619] - Move parsers' logic about 'ExpressionFactoryBean' BeanDefinition into 'IntegrationNamespaceUtils'
  • [INT-2664] - AbstractInboundFileSynchronizer doesn't preserve file change timestamp
  • [INT-2739] - JDBC Stored Procedure Adapters <returning-resultset>'s 'row-mapper' attribute should be converted into Bean reference
  • [INT-3137] - Please don't remove JdbcMessageChannelStore if/when JdbcMessageGroupStore is re-written
  • [INT-3177] - RedisPublishingMessageHandler: use generic RedisTemplate, not StringRedisTemplate

Task

  • [INT-2500] - Consider Global options for managing SI configuration.
  • [INT-2870] - Document the IP Message Headers in Reference + API docs
  • [INT-2898] - Add Persistent AcceptOnceFileListFilter
  • [INT-2930] - Doc - Mention explicit SI version number that introduced new feature
  • [INT-3074] - Make gradle task 'generateSql' OS independent
  • [INT-3075] - Http gateway ignores expected-response-type when response has no body
  • [INT-3092] - Add to Reference Manual am important note about Jackson libraries varsions issues
  • [INT-3113] - Update Redis Tests to use the Lettuce Client
  • [INT-3154] - Update Javadoc to Use the SPR Stylesheet; Fix Missing package-info Files
  • [INT-3155] - Add Gradle Task 'testAll'
  • [INT-3159] - Add an alias or maximum-number-of-results attribute
  • [INT-3170] - Update project name in root files
  • [INT-3183] - <int-jmx:mbean-export /> Document ID for Programmatic Reference
  • [INT-3217] - Update Default Spring Version to 3.2.5
  • [INT-3218] - Don't Use CollectionUtils Where a Generic Type is Required

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.