3.9.1 has made it to GA!

3.9.1 Has Made it to GA; get it as a standalone installer or docker image.

Version 3.9.1

Release Date : 2019-08-27

Key Highlights

  • The UI Config page has had many improvements including:
    • Advanced settings view can be toggled on a per-component basis
    • When selecting a connection for a producer; we always try to display the most suitable connection first
    • The navigation tree now displays Services (experimental)
    • Improved validation when trying to import existing configuration into a project.
  • Microsoft SQL Server is now supported as the UI database
  • A new management component that can cluster Interlok instances via jgroups (interlok-cluster-manager)
  • New interlok-elastic-rest optional component that uses the Elastic RestHighLevelClient. This supersedes all existing elasticsearch components, which have been deprecated and will be removed in a later release.
  • Amazon Kinesis is now supported as a produce target via interlok-aws-kinesis
  • org.eclipse.jetty.security.JDBCLoginService is now a valid login service to use with Jetty
  • EDI transforms may now cache definitions via an external cache provider
  • MessageAggregators can now filter messages prior to performing the actual aggregation.


  • INTERLOK-2599 - UI Config Page - user prefs ‘Prettify names’ & ‘Collapse component container’ aren’t working together correctly
  • INTERLOK-2744 - Rewrite HttpConsumerTests to remove timing issues.
  • INTERLOK-2755 - UI: Can’t reposition a service-list if it is open in config pane
  • INTERLOK-2806 - UI: Autocomplete is not supported apart from Timezone / Locale
  • INTERLOK-2818 - Interlok Widget: Message Counts Chart
  • INTERLOK-2819 - UI StandaloneProducer do not show “recommended producers” first
  • INTERLOK-2848 - jetty-message-consumer allows invalid encoding to be set
  • INTERLOK-2859 - Saxon 9.9.1 breaks interlok-webservice-cxf
  • INTERLOK-2863 - UI Salesforce - build get-oauth-token faulty - consumer-secret is truncated and token-url not set
  • INTERLOK-2877 - JMS Queue Consumer Templated Component described as a topic / includes unneccessary whitespace
  • INTERLOK-2880 - SonicMQ ant task does not work with gradle
  • INTERLOK-2885 - UI Config Page - The workflow and service containers are higher than the connection, consumer and producer containers.
  • INTERLOK-2886 - UI - Jackson Databind Vulnerability
  • INTERLOK-2887 - UI Startup - Getting a stacktrace at startup - Could not create/verify default admin user
  • INTERLOK-2888 - UI Config - In the setting editor when clicking on the + button to load implementation of a nested component the existing value is removed.
  • INTERLOK-2891 - UI Service Test - Editing the Service Test Unique Id or Test Adapter Type cause a js error.
  • INTERLOK-2897 - RabbitMQ interoperability with “bunny”
  • INTERLOK-2898 - Cannot configure dynamic-service-from-database
  • INTERLOK-2900 - UI Config Page - The ‘Add Variable Set’ and ‘Delete’ buttons look different in the Import Config with variables modal.
  • INTERLOK-2901 - Custom Entity Resolvers are not executed in XML services
  • INTERLOK-2902 - Jetty Embedded Connection does not throw exception if misconfigured
  • INTERLOK-2905 - Config Page Settings editor - Javascript error when using Switch Case conditions
  • INTERLOK-2909 - Deleting a nested service list doesn’t remove its services
  • INTERLOK-2912 - UI Service Test - Running a single test case from a project when the test has a file source service to test always fails.
  • INTERLOK-2918 - XA-vendor javadocs have broken links
  • INTERLOK-2919 - interlok-licensing does not have a manifest file


  • INTERLOK-2612 - Migrate to commons-lang3
  • INTERLOK-2650 - UI : Add MS SQLServer as a supported interlok-ui Database
  • INTERLOK-2669 - UI Config Page - Change the settings editor so the advanced flag is set on a per class basis.
  • INTERLOK-2712 - UI Config Page - Navigation Tree - support services
  • INTERLOK-2721 - jetty-connection: Wrap JDBCLoginService
  • INTERLOK-2784 - interlok-aws: Kinesis Data Streams Producer
  • INTERLOK-2799 - JettyMessageConsumer make role authenticated as metadata value
  • INTERLOK-2801 - UI - When loading a property file that has duplicate keys an “unhelpful” error appears
  • INTERLOK-2807 - JGroups - Management Component
  • INTERLOK-2809 - Investigation into auto-scaling
  • INTERLOK-2844 - Standardised Id Generator for LNR
  • INTERLOK-2845 - Add configurable behaviour to do/while + while when max-loops exceeded
  • INTERLOK-2851 - CheckCache should probably be a “condition”
  • INTERLOK-2852 - Implementation of filter functionality within an aggregator
  • INTERLOK-2871 - interlok-cxf: Add ability to add headers to Outbound Request
  • INTERLOK-2872 - deprecate the setLookupName field
  • INTERLOK-2884 - Add a “simple appending aggregator”
  • INTERLOK-2889 - interlok-aws-s3: Add List Operation
  • INTERLOK-2893 - Turn elastic-rest into a multi-module project for feature parity with es5
  • INTERLOK-2780 - UI Config - Import with variables validation requires improvement
  • INTERLOK-2837 - UI Config - Settings Editor - the recommended choices on the impl selector don’t have an order applied.
  • INTERLOK-2865 - Fix CDATA issue with woodstox
  • INTERLOK-2896 - Add documentation for the issues described in INTERLOK-2816 and INTERLOK-2894
  • INTERLOK-2921 - JSON objects are not rendered as JSON by JSONPathService