I have just completed an integration to a third party web service with Maximo 7.5 using the Interactions application.
Interactions are a great way to call an external Web Service from the Maximo UI and as this was the first time I had used this application I was struck by:
How intuitive it is to get a basic interaction working. Simply enter the wsdl url fo the webservice you are calling. Assign it to a Maximo application and map the MBO request and response attributes.b)
I didn't have to write any Java code.c)
I didn't have to write any Java code.
It did turn out there were a few gotchas though.
The most frustrating issue I found was that the Interactions app does not support certain schema elements. In my case a wsdl called the a schema that simply contained the following complex element:
<s:element maxOccurs="1" minOccurs="0" name="startTime" type="s:dateTime"/>
<s:element maxOccurs="1" minOccurs="0" name="endTime" type="s:dateTime"/>
<s:element maxOccurs="1" minOccurs="0" name="responseType" type="s:string"/>
The result was the interaction claiming that this was not well formed. My eventual solution was to create my own version of the wsdl without the complex type. If anyone has advice on how to make Maximo handle this then please comment!
Secondly the help wasn't overly clear on some of the other available options when creating the interaction, fortunately there is a useful technote to help out:
, the Create Interaction app creates several Maximo entities behind the scenes including Object Structures, MBOs and Application Dialogs. These can be edited if you wish to tailor the interaction behavior. For example, the default dialog generated by the Interaction does not have the most user friendly labels. These can be edited in Application Designer, edit dialogs or by exporting and editing the applicaiton xml.