Dependencies and references

Integration components depend upon one another to perform their roles in the business integration system. For instance, business object definitions can contain other business object definitions as children, collaboration templates have business object definitions associated with their ports, and connectors have maps associated with their supported business objects. These dependencies must be satisfied for the system to function properly, and when InterChange Server Express is started in production mode it checks to make sure that all dependencies and references are resolved. If it detects any unresolved dependencies or references then InterChange Server Express fails to start in production mode.

The terms dependencies and references are used to describe the relationship between components, depending on the context. For example, a connector definition requires the business object definitions it supports and the maps associated with those business object definitions to exist so that it can exchange data with InterChange Server Express. In this context, the business object definitions and maps are dependencies of the connector definition. If you view the same relationship between the business object definition and the connector definition, but in the context of the business object, the connector is one of the references of the business object definition--along with any other business objects that contain it as a child, any maps that transform it, any collaboration templates that support it for their port definitions, and so forth.

Table 8 specifies the components that can be dependencies and references for each component type.

Table 8. Integration component dependencies and references
Component Dependencies References
Business objects
  • Business objects
  • Business objects
  • Maps
  • Connectors
  • Collaboration templates
  • Collaboration objects
Relationships
  • Business objects
None
Connectors
  • Business objects
  • Maps
  • Collaboration objects
Maps
  • Business objects
  • Maps
  • Connectors
  • Collaboration objects
Collaboration templates
  • Business objects
None
Collaboration objects
  • Business objects
  • Maps
  • Connectors
  • Collaboration templates
  • Collaboration objects
  • Collaboration objects

Showing dependencies and references

You can use System Manager to show the dependencies and references for an integration component.

To show the dependencies for a component, right-click it in System Manager and select Show Dependencies from the context menu. The "Dependency Tree" wizard appears. For more information, see Using the Dependency Tree.

To show the references for a component, right-click it in System Manager and select Show References from the context menu. The "Object References" window appears.

Dependencies that cannot be detected by the system

There are some dependency and reference relationships that cannot be automatically detected and enforced by the system. Table 9 describes the components for which the system cannot determine dependencies and references.

Although the system is unable to detect these dependencies and references, they must still be satisfied for the system to operate properly. You must maintain accurate project documentation to make sure that when you deploy an interface from one environment to another you include any of these extra dependencies.

Table 9. Components for which the system cannot determine dependencies and references
Component Explanation
Relationships Maps and collaboration templates can use relationships, but they do so through APIs in Java code. The system cannot parse all the code in all maps and collaboration templates to detect the use of relationships.
Database connection pools Maps and collaboration templates can use database connection pools, but they do so through APIs in Java code. The system cannot parse all the code in all maps and collaboration templates to detect the use of database connection pools.
Data handlers Connectors, as well as other components, can use data handlers to format data. Data handlers are not managed by the system at all, and it therefore cannot detect them.
any component used exclusively in code Although the system can determine that a map depends upon a business object when you have drag-and-dropped the business object definition into the map as a source or destination, it cannot detect any use of components that occurs exclusively through custom Java code. If you instantiate a new business object or manually invoke a map in a map or collaboration, the system is not able to detect that dependency.
Schedules The system does not currently support the detection of dependencies and references for schedules.

Copyright IBM Corp. 2004, 2005