App Connect

 View Only

Explore the new features in App Connect Enterprise 12.0.5.0

By Ben Thompson posted Mon June 27, 2022 07:08 PM

  
iStock_000020343379_XXXLarge


We aim to provide regular quarterly mod releases for ACE 12, which contain both new features and regular maintenance:

  • IBM App Connect Enterprise 12.0.1.0 was released in May 2021.
  • IBM App Connect Enterprise 12.0.2.0 was released in September 2021 - more information here
  • IBM App Connect Enterprise 12.0.3.0 was released in December 2021 - more information here
  • IBM App Connect Enterprise 12.0.4.0 was released in March 2022 - more information here
  • IBM App Connect Enterprise 12.0.5.0 was released in June 2022 - more information below.

This blog post summarizes all the latest and greatest capabilities which were made available in IBM App Connect Enterprise 12.0.5.0:

  • New Discovery Connector nodes:
    • Amazon S3 Request node
    • Coupa Request node
    • IBM Cloudant Request node
    • IBM Maximo Request node
    • Microsoft Azure Blob Storage Request node
    • Magento Request node
    • Salesforce Request node
  • Dynamic variables for matching messages on the MQInput node

Read the sections below to find out more!

New Discovery Connector nodes

App Connect Enterprise 12.0.5.0 introduces a new style of message flow node known as Discovery Connector message flow nodes. These new discovery connectors come with an easy guided experience in the development Toolkit for connecting to online applications and gathering the required configuration. Users might recognise some aspects of the look and feel of the user experience which we have taken into the App Connect Enterprise Toolkit from their original home in the App Connect Designer authoring experience which is provided as part of our public IBM Cloud App Connect offering, and also as part of our App Connect Enterprise Certified Container offering. The App Connect Enterprise 12.0.5.0 software release introduces seven new message flow nodes of this style: Amazon S3 Request, Coupa Request, IBM Cloudant Request, IBM Maximo Request, Magento Request, Microsoft Azure Blob storage Request, and Salesforce Request node


The Toolkit Tutorials Gallery includes seven new tutorials. Each tutorial demonstrates how to use one of the new message flow nodes:


The Toolkit provides a guided process to Manage Connector Policies and Credentials. Connection details are saved in a policy inside a policy project, and credentials for accessing the third party applications are saved in an encrypted form in the ACE vault.


When one of the Discovery Connector nodes is dragged and dropped in to a message flow, you can Launch the Connector Discovery process using a button on the node properties.


The discovery process lets you configure your desired object and action, and optionally also define filters for use when retrieving data. These filters are displayed at the end of the configuration process as properties of the message flow node:

Amazon S3 Request node

Amazon Simple Storage Service (Amazon S3) is a simple storage service that provides object storage through a web service interface. It uses the scalable storage infrastructure of Amazon.com and enables you to store objects, download and use data with other AWS services, and build applications that call for internet storage. IBM App Connect Enterprise 12.0.5.0 provides an Amazon S3 Request node, which enables you to connect to Amazon S3 and issue synchronous requests to create, retrieve, update, delete, or view objects. The node supports a wide variety of Amazon S3 objects such as Buckets, Object ACLs, Object tags, Objects etc.  Once the discovery process is complete, you can override connection details in the generated policy:

Coupa Request node

Coupa software allows you to manage and analyze your employees' spending, from procurement to invoicing and expenses. IBM App Connect Enterprise provides a Coupa Request node, which enables you to connect to Coupa and issue requests to create, retrieve, and update objects such as expense reports, exchange rates, and invoices. The node supports a wide variety of Coupa objects such as Addresses, Exchange rates, Expense reports, Inventory transactions, Invoices, Lookup values, Purchase orders, Remit-to addresses, Suppliers, Users etc. Once the discovery process is complete, you can override connection details in the generated policy:

IBM Cloudant Request node

IBM Cloudant is a highly scalable JSON (JavaScript Object Notation) database service, which stores JSON formatted documents.  The node supports a variety of Cloudant objects such as Attachments, Databases, Documents, Views etc. Once the discovery process is complete, you can override connection details in the generated policy:

IBM Maximo Request node

IBM Maximo is an enterprise asset management solution that enterprises can use to track and manage assets throughout their life cycles, manage procurement, contracts, services, people, and work orders, and optimize work processes. IBM App Connect Enterprise provides an IBM Maximo Request node, which enables you to connect to Maximo and issue synchronous requests to create, retrieve, update, delete, or view objects.  The node supports a variety of Maximo objects such as Assets, Companies, Contracts, Crafts, Labors, Locations, Person groups, Person users, Service addresses, Service requests, Work orders etc.  Once the discovery process is complete, you can override connection details in the generated policy:

Microsoft Azure Blob Storage Request node

Microsoft Azure Blob storage is a Cloud Object Storage solution. IBM App Connect Enterprise provides a Microsoft Azure Blob Storage Request node, which enables you to connect to Azure and issue synchronous requests to retrieve information.  The node supports a variety of Microsoft Azure Blob Storage objects such as Append blobs, Blob services, Blobs, Containers, Page blobs, Snapshots, Versions etc.  Once the discovery process is complete, you can override connection details in the generated policy:

Magento Request node

Magento is an e-commerce platform that integrates online and physical shopping experiences. IBM App Connect Enterprise provides a Magento Request node, which enables you to connect to Magento and issue synchronous requests to create, retrieve, update, delete, or view objects.  The node supports a variety of Magento objects such as Attribute sets, Carts, Categories, Customer groups, Customers, Products, Sales credit memos, Sales invoices, Sales orders, Sales rule coupons, Sales rules, Sales shipments etc.  Once the discovery process is complete, you can override connection details in the generated policy:

Salesforce Request node

Salesforce is a work management and project tracking app that provides projects, tasks, conversations, and dashboards to enable teams to collaborate and track progress online. IBM App Connect Enterprise provides a Salesforce Request node, which enables you to connect to Salesforce and issue synchronous requests to create, retrieve, update, delete, or view objects.  The node supports a variety of Salesforce objects such as Accounts, Attachments, Campaigns, Cases, Contacts, Content documents, Events, File shares, Files, Folders, Leads, Opportunities, Orders, Products, Solutions etc.  Once the discovery process is complete, you can override connection details in the generated policy:

Dynamic variables for matching messages on the MQInput node

The MQ Input node will typically read messages from its specified input queue in the manner of FIFO (First In First Out), but there are some situations where an architecture requires specific messages to be read from a queue. In these situations, the properties on the MQ Input node's Advanced tab of Match message ID or Match correlation ID can be helpful. As their name suggests, these fields can be given a hexadecimal number which is used to execute a selective read of messages from the queue whose identifier (carried in the MQMD header of the message) matches the static value. This existing capability of the product has been further enhanced in App Connect Enterprise 12.0.5.0 to allow the specification of the message ID / correlation ID via a user variable which can be passed to the message flow when the integration server process is started.

This practice will prove particularly helpful when deploying multiple container replicas within a Cloud Pak for Integration environment. When running containers, you may wish to independently scale MQ and ACE by using a single queue manager to service multiple Integration Server replicas, each of which makes an MQ client connection and reads from the same queue. In these situations, you might also require a given ACE integration server replica to be able to retrieve its own particular reply messages from the queue. For example, consider a flow whose purpose is to receive HTTP requests, transform and route them to MQ, and then receive responses from an MQ back-end application before sending a transformed response message back to the initiating HTTP client. In order for the reply message to be successfully returned to the waiting HTTP client, it is essential that integration server replicas should only ever take their own reply messages from the queue and nobody elses.

You can assign the name of a user variable to the Match correlation ID property as shown below. Note that in the ACE 12.0.5.0 Toolkit, the validation of the field in the UI has not yet caught up with this new feature and still expects a hexadecimal number. You can safely ignore this error and using a variable will not block you from saving the message flow and continuing to build a BAR file and deploy the message flow.



The syntax used when defining the property expects the hard-coded prefix value of iib.user- inside square brackets. The characters after this prefix are expected to match a user variable, which has been defined in the server.conf.yaml file, like the example below:

UserVariables:
  encodedvar: '0x111111111122222222223333333333444444444412345678'

In order to satisfy the architectural need discussed above, where different replicas of the same integration server use different values for the matching correlation ID, it is necessary to combine this new feature with the ability to specify a start-up script for an integration server. Consider the example server.conf.yaml shown below which demonstrates how the hostname of a container replica can easily be converted into a unique hex value using the sha1sum command. The sha1sum command is available in Linux environments and can be used to compute a SHA-1 message digest (a 20 byte hash value).  In this example, the value of the User Variable (named encodedvar) is applied directly from the output of the startup script

StartupScripts:
  EncodedHostScript:
    command: 'export ENCODED_VAR=`echo $HOSTNAME | sha1sum | tr -d "-" | tr -d " "` && echo UserVariables: && /bin/echo -e " encodedvar: \\x27$ENCODED_VAR\\x27"' 
    readVariablesFromOutput: true













0 comments
117 views

Permalink