Deploying a subflow created as a .msgflow file

You deploy a subflow created as a .msgflow file to an integration server by sending a BAR file to an integration server in an integration node, which unpacks and stores the contents ready for when your message flows are started.

About this task

From a deployment perspective, in IBM® Integration Bus, subflows created as a .msgflow file can be deployed in any of the following ways:
  • As part of a message flow defined within an Integration project.
  • As part of an application or an integration service.
Note: If you deploy a subflow created as a .msgflow file as an independent resource, you will encounter processing inconsistencies in the IBM Integration Bus runtime environment. This subflow deployment configuration is not valid. The following information explains why it is not valid:
  • When you deploy a subflow separately from any of the message flows defined within an Integration project that use this subflow, the subflow created as a .msgflow file must contain an Input node such as MQInput node. When your subflow includes an Input node and optionally an Output node, and you add this subflow into your message flow, you are effectively invoking a message flow.
  • The subflow can be deployed directly into an integration server in an integration node, or as part of a library. The subflow and the message flows that include this subflow must be deployed in the same integration server.
  • You create a BAR file containing just a .msgflow file acting as a subflow with an Input node. However, you also must create a BAR file to deploy the message flow that includes the subflow. The BAR file that includes the message flow also includes a copy of the subflow.
  • When you run your solution, you have active in the IBM Integration Bus runtime environment two copies of the subflow that can pick up messages for processing by its Input node. Not all messages are processed equally.


To deploy a subflow created as a .msgflow file, complete the following steps:

  1. Decide whether you plan to deploy a subflow as part of an application, an integration service, or an Integration project.
  2. Verify that you have a valid deployment configuration. For more information, see Deployment configurations for subflows created as .msgflow files.
  3. Deploy the BAR file into the IBM Integration Bus run time. For more information, see Deploying integration solutions to a production environment.

What to do next

After you have deployed a version of a subflow to the run time, you might want update the subflow. For more information, see Updating a subflow.