Deploying message maps
By default, message map files are deployed in BAR files as a part of an application, integration service, or library that provides an integration solution. You can also deploy a map as an independent resource if you are managing your message flows that way. If you change a message map, you must redeploy your integration solution or independent message flows.
About this task
When an integration solution or message flow containing a Mapping node is deployed, message maps that are referenced in the Mapping routine property of the Mapping node are resolved and validated. This preparation occurs at deployment time, rather than when the first message is flowed through the node.
- There is no drop in performance from initializing a message map when the first message is flowed through the node.
- The message map and its dependencies, such as any referenced message models, are resolved and validated during deployment to ensure that the message map runs successfully on first message.
- The message map syntax is validated during deployment to ensure that the message map runs successfully on first message.
- When IBM® App Connect Enterprise is restarted, the message map syntax and its dependencies are validated before the message flow can be restored.
To avoid a deployment failure, you must include all the message map dependencies, referenced schemas, ESQL modules, Java™ classes, and other resources in your BAR file. You must resolve any message map static errors such as an invalid XPath expression. If these requirements are not met, you receive a BIP message that reports the map generation failure.
By default, any map that is in the BAR file but not referenced in the
Mapping routine property of the Mapping node is not validated on deployment. If the map is
used dynamically by a Mapping node, by selecting it in a
LocalEnvironment override (LocalEnvironment.Mapping.MappingRoutine =
'{brokerSchemaName}:mapName'
), it is validated and prepared when it is first used.
true
in the server.conf.yaml configuration file or on the
mqsichangeproperties command. For example, to set the
property for an integration node, you can use the following
command:mqsichangeproperties --integration-node integrationNodeName --property generateAllMapsOnDeploy --value true
generateAllMapsOnDeploy: true
The integration server must then be
restarted for this change to take effect. If you set the generateAllMapsOnDeploy property to
true
, ensure that all .map files in your application, library,
and integration project are intended for use by a Mapping
node that is in the BAR file. If any other .map files are found in the
application, library, or integration project, they might cause deployment to fail.
Procedure
When you deploy message maps, the behavior of IBM App Connect Enterprise is as follows: