A Division of Technology Associates International Corporation
Maximo Blog

MEA Example: Triggering interface when child record is modified

February 03, 2009 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 10 Comments

Sometimes, because of the structure of the message Maximo has to send, you have to make one table the base for the Integration object, but you need to trigger the interface when a record is modified on a child table. Since Maximo only listens for changes on the base MBO, …

Read More

Using Standard Java SQL Connection in Maximo in a UserExit

February 02, 2009 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 14 Comments

It is possible to pass a SQL statement into the database without having to define a connection string. From any MBO object, you can get a connection to the current database. From that, you can pass in any SQL statement and use the results to populate values in a Integration …

Read More

Error: Class Not Found. Class bytes found but defineClass()failed

January 27, 2009 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 4 Comments

If you created a custom UserExit or Mbo class and when you try to run it in Maximo you get the follow error in the log: Class Not Found. Class bytes found but defineClass()failed Note this is not a standard Class Not Found error. What this means is that you …

Read More

MEA: More on Query/Response Web Services

January 08, 2009 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments

Querying on Children MBOs According to the MEA Programming documentation, in Maximo 6, if you create a Query/Response Web Service where the Integration Object has a parent and child MBO, you cannot query fields against the child MBO. I do have people that have tested this and found it to …

Read More

Outbound Interfaces and Domain Descriptions

December 12, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments

Sometimes, when dealing with Maximo domains, you need to export the Description for the domain item and not just the Domain Value. This can be done by creating a relationship and then a SET outbound rule. Although in this example I will be using AssetType (and the descriptions are not …

Read More

How to install the INTCLIENT (without installing Maximo)

December 03, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 2 Comments

It is possible to install just the Integration Client on a computer without installing full Maximo on that computer. You will still need to have Maximo installed (and configured) on a computer somewhere so you can copy the needed files. This install is not small (requires around 170 meg) as …

Read More

Maximo Integration Client- The Missing Manual

November 25, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 1 Comment

OK, I hinted that I might create a user's manual for the INTCLIENT and now, here it is. This is just version one and I am sure there are some things I either missed or got wrong. If you find something, please let me know and I'll update the document. …

Read More

Intclient Error: UsernamePasswordCredentials class not found

November 25, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 0 Comments

I got this error when trying to use a web service (SOAPDOC). This error appeared in the command window running the intclient. Nothing appeared in the Message window of the inclient or on the application server. I don't know why this error occurs on some installs and why it doesn't …

Read More

MEA: Overview

November 20, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 9 Comments

Someone recently asked me to teach them about the MEA and I pointed them to this web site. Only, as I was showing it to him, I realized that my site assumes the reader has a basic understanding of how the MEA works. What was missing was a definition of …

Read More

MEA: Adapter

November 19, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 2 Comments

You probably noticed that Maximo (out of the box) is very ridged in the format of the message. Both XML and flat files must be in a "Maximo" centric format. However, you can make Maximo create messages in a different format. To do this, you have to create your own …

Read More

Migrating MEA and Database changes

October 17, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 3 Comments

It turns out that you can use the MEA to export your integration and database changes, and then import them into another system. You can do this because out of the box Maximo comes with integration objects for the MEA objects as well as the Object Configuration, Max Messages, Domains, …

Read More

MEA: UserExit Class

September 11, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 18 Comments

So far, we have covered how to interface with Maximo using standard out of the box tools, but sometimes, you need to do some complex processing. Maximo provides a way to do this by creating a custom user exit class. A user exit class is Java code that you can …

Read More

MEA: JMS Queues

August 22, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 5 Comments

If you are using some type SOA tool, then you will need to setup the MEA to send and receive data on different JMS Queues. The MEA actually uses three JMS Queue for internal use. One is an outbound sequential queue, one is an inbound sequential queue (records will be …

Read More

MEA: HTTP Post

August 14, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 14 Comments

Another way of getting data in and out of Maximo is via a HTTP Post method (like submitting a web form). Although this works well for putting data into Maximo, it is not very practical for send data out of Maximo (unless the receiving system is also Maximo). Let talk …

Read More

MEA: XML and Flat files (Outbound)

August 01, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 11 Comments

The Maximo MEA has the ability to automatically generate both XML and flat files for outbound transactions. Out of the box, there is no way to automated the loading (inbound) of flat or XML files. Let's look at how to do it. Setup The Integration Object and Integration Interface are …

Read More

MEA: Web Service Part 3 - Outbound

July 25, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 4 Comments

So far, we have covered how to get data into Maximo via a web service and how to query data out of Maximo. The last step is making Maximo push data out to a web service in another system. Let's get started with the setup. Integration Object and Integration Interface …

Read More

MEA: Behavior of Integration Objects

July 18, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments

It is important to under the behavior of Outbound Integration Objects. Specifically, I am talking about when data that is changed in the Maximo, what will trigger the Integration Interface. When you create your Integration Object, you select a main MBO (this is the one without any parent MBO). For …

Read More

MEA: Web Service Part 2 – Query/Response

July 11, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 28 Comments

In the last entry, we talked about the Notify Web Service. This is use for incoming "Syncing" data. If you want to get data out of Maximo (using a web service), then you have to setup a Query/Response web service. Basically, you can use one Integration Object (or two if …

Read More

MEA: Web Service Part 1- Notify

June 26, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 9 Comments

One of the features of the MEA is its ability to create a web service based on an integration interface. This is all done without having to write one line of code. You can create two different types of web services, Notify and Query/Response. A Notify web service is used …

Read More

MEA errors fill log files

June 22, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments

One thing you might find is that when you have a MEA record error, the JMS server keeps trying to reprocess the record over and over. This causes the server to slow down and fill up the drive space with log files. The reason for this is that the default …

Read More

MEA: Error Handling

June 22, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 4 Comments

When the MEA processes a record and it has an error, the MEA do three things. The first is that it writes the error message to the server log file. Next it sends the error to the administrators email address. The last thing is that it write an XML file …

Read More

MEA: XML Messages

June 20, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments

Let's take a minute to look a the XML message format. When dealing with the MEA you will end up dealing with messages in XML format. Even when you import flat files and interface tables, Maximo converts each record to the XML format. There are three different XML message formats, …

Read More

MEA: External Systems

June 12, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 9 Comments

Let's look at the External Systems screen. External system is a way to group together interfaces that 1) go to the same external application and 2) have the same end point (more on this later) and 3) will be run on the same schedule. Every Integration Interface MUST be assigned …

Read More

MEA Integration Interface Processing Rules: Examples

June 05, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 14 Comments

Now that I have covered how to setup processing rules, I thought it would be good to give some samples on when to use what type of rule. Situation: say you have to have to convert lookup data from system X to Maximo lookup data. You know that each value …

Read More

MEA Integration Interface Processing Rules - Part 2

June 04, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 2 Comments

In my last post, I talked about setting up Stop/Skip rules. In this post I will be talking about the other types of rules. There are two basic types of rules. The first type are rules that either skip a record or stop processing. The other type are rules that …

Read More

MEA Integration Interface Processing Rules - Part 1

May 30, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 2 Comments

Let's talk a little more about processing rules. I covered the Integration Interface screen. In that I talked about the processing rules tabs, but only covered the fields and not how to set up processing rules. I will now attempt to cover how to create processing rules. However, there is …

Read More

MEA: Integration Interfaces

April 20, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 1 Comment

Once you have your integration object all setup, the next step is to create your Integration Interface. An Integration Interface is where all data going between the Integration Object and some external system (inbound or outbound) must pass through. This is also where you can attach special processing classes that …

Read More

MEA: Integration Objects

April 11, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 17 Comments

Let's take a minute to look at the Integration Object screen. First we need to define what an Integration Object is. An Integration Object is a Maximo MEA Object used to define what data will be available for both inbound and outbound data flow. It is made up of Maximo …

Read More

Handy MEA tools included with Maximo

March 26, 2008 in Maximo, Maximo 6, Maximo: MEA, Maximo: Programming by Michael Chrisman 8 Comments

Maximo comes with a couple of very hand tools for helping you manage and program the MEA. These tools are officially unsupported, but they are pretty useful. The first tool is called: Integration Client. This is a Java tool that allows you to test your inbound MEA interface. This includes …

Read More

More on Maximo MEA Setup

March 18, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments

Here are a few other setup tasks that you might need to do to setup you Maximo MEA. Maximo MEA Server Name For purposes of the MEA each install of Maximo is given a name. This name is very important to the MEA as XML messages must be "addressed" to …

Read More

Work Tech’s new MEA Generic Posting Interface

January 01, 2008 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 1 Comment

With the new version of Maximo (6.x), Work Tech had to create new interface for their WorkTech Time application. I have to say, this new interface is pretty nice. They have developed an interface that makes it fairly easy to get data from WorkTech Time to Maximo Using the MEA. …

Read More

Maximo(MXES) MEA Part 3: Debugging/Troubleshooting Interface Tables

November 14, 2007 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 19 Comments

In this entry I will be talking about how to debug and troubleshoot the MEA Interface tables. The MEA can seam very much like a "black box" where you put records in and they come out the other end, but what happens inside the box can be a mystery. If …

Read More

Maximo(MXES) MEA Part 2: Programming Interface Tables

November 05, 2007 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 0 Comments

In this entry, I will be talking about how to program the MEA interface tables. In the last entry I talked about how to setup the MEA but the one thing to remember is that you do not get to define what the table looks like (at least not directly), …

Read More

Maximo(MXES) MEA Part 1: Overview/Configuration

October 27, 2007 in Maximo, Maximo 6, Maximo: MEA by Michael Chrisman 70 Comments

This is the first of a three part series on the Maximo Enterprise Adapter (MEA). I will be talking about the MEA found in Maximo Version 6.x (MXES). The MEA is a tool that helps you with interfaces to other applications. It allows you to automate importing and exporting data …

Read More