Scripting was introduced in Maximo 7.5 based on the feedback from the user community who wanted to have a simpler yet effective way of customizing the product without having to go through system downtime and a steep learning curve.
While Maximo provides multiple customization points, most of them need JAVA coding skills to do any meaningful or logic -based customization. It would also require a deep knowledge of Maximo APIs as well as the Maximo internal architecture. That can often be a difficult task even for an experienced programmer.
Maximo scripting helps ease some of these concerns. Maximo scripting is primarily based on the Java Specification Request (JSR) 223 specification, which is a part of JAVA 6. This JSR allows a JAVA application, which is Maximo, to host script engines compliant with this specification. The engines that are supported in Maximo by default are:
|Jython (2.7.2) which is included as part of Maximo|
In addition to the JSR 223 compliant engines, the scripting framework is extensible to support other custom engines as shown in the following architecture diagram:
There is support for Maximo Business Rules (MBR) script driver, which can invoke MBR scripts. This is a non-JSR driver written to handle a custom scripting language (MBR) created just for Maximo. This shows the extensibility of the framework.