Integration framework components
The framework for data exchange includes components and tools that you can use to implement different types of integration scenarios.
Components
The framework includes predefined integration components and applications you can use to configure components. The main components are described in the following table.
Component | Description |
---|---|
Object structures | An object structure is the common data layer that the integration framework components use for outbound application message processing. An object structure consists of one or more related business objects that define the content of an XML or JSON message (schema). For JSON messages, you can configure message templates to filter which data from the related business objects is included in the message. |
Business objects | Application business objects are available as Representational State Transfer (REST) resources for queries and updates by using the REST API component of the integration framework. |
Publish channels | A publish channel is used for sending asynchronous messages through a message queue to an external system. Publish channel messages can be initiated via an event or through the Data Export feature. |
External systems | An external system is defined for the external application that you plan to integrate with. The external system identifies the communication protocol to use and which publish channels and message queues to implement for that external system. |
Handlers and endpoints | A handler and its associated endpoint routes outbound messages to an external system. The combination of a handler and its endpoint specify the transport protocol, such as HTTP, and provide the communication data required to reach the destination, such as a URL. You configure endpoints for the handler that you use. |
Data import and export | You can load data from either XML files or flat files, such as a comma-separated text file or a CSV file. You can import and export data in the JSON format. You can initiate data import and export from a product application and you can schedule a batch process to perform an import as a background process. You can export one or more records to a file using a Publish Channel, where filter conditions can be applied to control the content of the data that is exported. |
Content | The integration framework provides predefined content that includes object structures, corresponding publish channels, an external system, and predefined handlers that support different communication protocols. |
API keys | You use API keys to enable a machine-to-machine integration for an external client. When an API key is assigned to the external client, the external client can access and interact with data in the Maximo® system. |
Processing
As integration messages flow out, the framework provides options, such as Java classes, XSL mapping and processing rules, to provide message transformation logic and business rules to meet your integration requirements.
Communication
The integration framework can facilitate asynchronous data exchange. Asynchronous messages are processed through the message queues. The queues can process messages in order of priority (sequential processing).
When integrating with multiple external applications, you can configure different channels and services to use different communication protocols, including HTTP and message queue messaging, based on the capabilities of each individual external application.
Security
The integration framework uses the product support for J2EE authentication security so that you can configure for Enterprise Java Beans (EJBs) and HTTP. You can configure authorization security for applications, objects, and standard service methods.
You can specify security that enables only the logged-in user to create an API key. To limit the creation of API keys to the logged-in user, specify 1 for the mxe.apikeyforloggedinuser system property.