We are happy to announce the release 2.3.1 of AS400Gateway for Mulesoft Anypoint platform. This release includes several convenience features per our customers’ feedback, as well as minor fixes, performance improvements, and compliance with the latest Mulesoft certification changes. Below are the most notable changes:

  • It’s possible to reference the external license instead of packaging the license files with the MuleSoft application
  • Developers can set the Reconnection period and retries specifically for the DQ Listener to better control the reconnection behavior
  • Call timeout period can be defined for the Program call operation

External License Reference

The AS400Gateway for MuleSoft requires a license to establish a connection to specific target IBM i  servers. The license file name was pre-set to as400-license.lic that developer’s package into the MuleSoft application in the src/main/resources folder. When the connection license is renewed on the annual or 3-year basis, Infoview issues a new license file that customers must repackage for each application that leverages the AS400Gateway.

For customers that have a mature, automated CI / CD process, this license replacement, repackaging and redeployment should be a fairly simple operation. However, some of our customers noted this as one of the inconveniences when working with the connector (also referred to as AS400Gateway).

To streamline the license renewal and installation process, the connector now supports managing the license in external locations, such as AWS s3 bucket. When a new license is issued, teams can simply replace the license in the existing external location with the same name, and upon the application restart, the new license will take effect.

The current connector release includes support for the following URI transports that could be defined in the LicenseURL field of the connection configuration:

  • HTTP/HTTPS http://<full-path-to-license-file>
    • For using Basic auth: https://<path>?useraname=param1&password=param2
  • SMB smb://<server>/<full-path-to-license-file>
    • For using Basic auth: smb://username:password@<ipaddres>/<path>
  • FILE file:/<fullpath>
  • CLASSPATH classpath:<path>
  • S3 s3://<bucket-name/license-file-name>?region=<region-name>&accessKey=<s3-access-key>&secretKey=<s3-secret-key>
  • FTP ftp://<server>/<path>?username=<user-name>&password=<password>

 

Data Queue Listener Reconnection Configuration

By default Data Queue Listener auto-recovers from any connection disruptions, until the connection is restored or the application is ended. The connector continuously tries to re-establish the communication with the server, with little or no delay between the retries. Most customers should continue to use this mode to ensure the listeners can start receiving DQ messages after the server maintenance or restart without any action required from the integration team.

Some customers asked for the ability to better control the auto-recovery and perhaps increase the time period between reconnection attempts, or in some edge cases, to stop listening after a pre-defined number of attempts. To address this requirement, we added the following new fields to the Data Queue Source configuration:

  • Connection Retries: Number of times the connector will retry before giving up. Default is -1, which means there is no limit on the number of retries. Please note – if you override this value, the connector will stop repairing the failed connection after the number of retries is reached!
  • Reconnection Period: Time between the reconnection attempts. Default is 1000 ms and can be adjusted to lower the network or IBM i system impact

Program Call Timeout

The most typical AS400Gateway for Mulesoft use case is to execute IBM i business logic via direct Program Call. This approach could be used to, for example, import orders to the ERP, get current account balances, or perform any other action against the back-end system by running a program or service program.

The Program Call operation is a synchronous action. The MuleSoft application waits for the Program Call to complete before moving on to the next processor in the flow. For time sensitive use cases, especially when the end user is waiting for the call results to be presented on the page (for example real time inventory check during the ecommerce checkout process), our customers asked for an ability to limit the time it takes to wait for the program call operation. The latest connector version includes ability to set a specific Call Timeout period. If the Program Call is not complete within the specified timeout, the operation will return a TIMEOUT_ERROR that could be trapped within the MuleSoft flow and used to present a meaningful message to the end user or retry the call.

Conclusion

The new connector release builds on the already solid foundation and adds more convenience and fine-tuning controls to make it even easier for IBM i customers to work with their back-end system data and business logic. You can see the full list of additional features and enhancements in the connector release notes, and get the latest version of the connector on Mulesoft Exchange. If you would like to see any new features added to the connector or have any other questions or requests please contact us at mule400@infoviewsystems.com or call 734-293-2160.