IBM Integration Bus, Version 9.0.0.8 Operating Systems: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

See information about the latest product version

Applications and libraries

Applications and libraries are deployable containers of resources, such as message flows, subflows, message definitions (DFDL, XSD files), JAR files, XSL style sheets, and WebSphere® Adapters files.

Applications

An application is a container for all the resources that are required to create a solution. An application can contain IBM® Integration Bus resources, such as flows, message definitions, libraries, and JAR files.

At design time, you define references to the following items:
  • Zero or more message flow dependencies (such as a Java™ project or message set).
  • Zero or more libraries that contain reusable resources.

You use applications to group all the resources that are required to deliver an integration solution, enabling easier development and management. If you are developing resources for multiple integration solutions in the IBM Integration Toolkit, then consider grouping your resources into applications. The use of a library helps organization by grouping reusable resources together. This library can also be used by other applications, services, libraries, or integration projects.

Applications typically contain message flows. If the message flow requires only one or two additional resources, such as one schema file and one ESQL file, consider storing all resources at the application level. But when you start to require multiple resources for your solution, or resources that might be shared with other solutions, consider putting the resources that your message flow requires into a library. That library can then be referenced by the application.

Applications provide runtime isolation whereby resources inside the application are not visible to other resources, such as message flows, libraries, or other applications that are running outside the application. Consider using applications if you need to ensure that updates to one group of deployed resources do not affect another group. For example, use an application when you want to control which flows pick up the latest version of an ESQL module. For examples of how to use applications to achieve runtime isolation, see Runtime isolation and resource sharing with applications and libraries.

Libraries

A library is a logical grouping of related code, data, or both. A library typically contains reusable helper routines and resources such as subflows, ESQL modules, message definitions, maps, and Java utilities. A library is useful to group together resources of the same type or function, for reuse or ease of management. Libraries are optional.

Consider using libraries for the following functions:
  • To group common types of resource (such as all your ESQL routines)
  • To group resources by function (such as all your error-handling routines)
  • To share routines and definitions across multiple teams, projects, or brokers
  • To use different versions of a coherent set of routines and definitions
Libraries can be referenced by applications, services, Message Broker projects, or other libraries.
  • If a library is referenced by an application, a copy of the referenced library is isolated at run time from resources outside the application. This copy of the library is not visible to resources outside the application.
  • If a library is referenced by a service, a copy of the referenced library is isolated at run time from resources outside the service. This copy of the library is not visible to resources outside the service.
  • If a library is referenced by an independent resource, the library is visible to all independent resources deployed in the same execution group as the library.

If you want to develop an integration solution where changes made to common resources can be deployed in one deployment operation without redeploying all your message flows and subflows, then you should define your message flows and subflows as independent resources within an Integration project or library that references the library that contains your common resources.

For an example of how to use applications and libraries, see the Coordinated Request Reply sample. You can view information about samples only when you use the product documentation that is integrated with the IBM Integration Toolkit or the online product documentation. You can run samples only when you use the product documentation that is integrated with the IBM Integration Toolkit.

For an example of how you might convert your existing resources to applications and libraries, see Example: Manual conversion of Version 7.0 resources to applications and libraries.

Consistency through the development, deployment, and operational management processes

Applications and libraries provide a consistent view of your resources through the development, deployment, and operational management processes. In WebSphere Message Broker Version 7.0 and earlier versions, file types and concepts were different at each stage of the development process. Multiple project types were used in the IBM Integration Toolkit to contain different types of resource. No consistent way existed of reusing common components across all processes. However, applications and libraries span the IBM Integration Toolkit for development, the broker archive (BAR) file for deployment, and tools like IBM Integration Explorer for operational management.

This diagram contains screenshots taken from the Version 7 and Version 9 Toolkits, showing the different ways in which the resources are organized.

Viewing applications and libraries

Applications and libraries are shown in the Application Development view. Resources that are contained in an application or library are also shown, whether an application or library refers to them directly or indirectly.

Message flow projects have been replaced by integration projects in IBM Integration Bus Version 9.0 (for more information, see Integration projects). Migrate message flow projects by following the instructions in Importing resources from previous versions.

Applications, libraries, integration projects, and other types of project are represented by the following icons.
Icon Description
Icon for an application Application
Icon for a library Library
Icon for integration project Integration project
Icon for Java project Java project
Icon for message set project Message set project

Applications and libraries that have been deployed to an integration server are displayed directly beneath the integration server in the IBM Integration Toolkit and IBM Integration Explorer. You can also view deployed applications and libraries by using the IBM Integration API or the mqsilist command. Libraries that are referenced by applications (that is, private libraries) are displayed directly beneath the application.

You can also specify how an application or message flow is started after it is deployed, or after the broker, integration server, or containing application is restarted. You can choose to start an application or flow manually, or for it to be started automatically. You can also choose to maintain the existing state of an application or library. You can configure the run state by using the BAR file editor, as described in Configuring the start mode of flows and applications at development time. You can also use the mqsiapplybaroverride command, as described in Setting the start mode of flows and applications at run time.

If you focus on a library or application, the Application Development view shows only that library or application. When viewing projects, you can also filter resources by using working sets.

For detailed instructions about how to manage your resources by using applications and libraries, see Managing message flow resources.

For a demonstration of how to start using applications and libraries, see IBM Education Assistant module: Applications and Libraries.


bc23060_.htm | Last updated Friday, 21 July 2017