Building and Deploying Maximo Anywhere
Now you have to manually build and deploy Maximo Anywhere into the Worklight Server. You do that by running the “build.cmd” command that you can follow in the documentation. You have to actually run it three times. One to build the project files, one to build the deployment files and one to deploy it.
During the second run, while building the deployment files, mine actually failed because my Android SDK path is in “C:/Android SDK” and notice there is a space there? Apparently it doesn’t like it so now it won’t build…. Damn!!! So don’t install android SDK in a directory with a space!
So the fix is to go into this file “C:\Program Files\IBM\MaximoAnywhere\platform\mobile\config\workstation.properties” and manually modify the path the android SDK. Make sure that path actually exists.
Now run the “build.cmd all-dist” again and 8 minutes later, it should be done.
Finally run “build.cmd all-deploy” to deploy it to the Worklight Server. And guess what happens… it failed saying that the “A WebGroup/Virtual Host 192.168.1.100:9080 to handle has not been defined”. First of all, why are you still using 9080 when I changed it to use 9082?
To fix this, open the deploy.properties file and change the ‘worklight.server.port’ number to the right one. And deploy again…
Now I get another error, “SEVERE: Procedure ‘create’ in adapter ‘OSLCGenericAdapter’ requires security test ‘CustomAdapter-securityTest’ which is not defined in authenticationConfig.xml.”
After a few hours of more research, I finally found a document called “Getting Started with Maximo Anywhere 7.5 V4.doc”. This document seems to be much better in terms of step by step guide, but I didn’t read it through or follow any of it, because I had already done most of the install. I did find one important part that wasn’t documented in the other doc. After you run “build.cmd all-dist”, it will build a worklight.war file here “C:\Program Files\IBM\MaximoAnywhere\platform\mobile\target\dist”. You then have to stop the application server in WebSphere and then redeploy this NEW worklight.war file in the enterprise application. This will in turn get rid of the SEVERE error earlier.
So you can now run “build.cmd all-deploy” and cross your fingers.
Now, I get another error. This time it’s pertaining to the upload URL. It is complaining that it can’t find http://192.168.1.100:9082/appcenterconsoleappcenterconsole (No, that’s not a typo). So it appears that during the install setup, I manually set the “Application Center” URL to http://192.168.1.100:9082/appcenterconsole, and then set the “context root” to “appcenterconsole”, so that it wouldn’t give me an error. But now it seems that setup is now incorrect. Now we need to change it. Open the deploy.properties file, and set the property like this:
The port 9082 just happens to be what I’m using here. Then set the other property like so:
Save the file and now run “build.cmd all-deploy”.
Now it finally installs correctly!
Login to Maximo Anywhere
You can login to the Worklight console and see the Maximo Anywhere apps, Work Execution and Work Approval. You can also run it within Google Chrome browser.
But before you login, there is one more setup. Login to Maximo and go to Security Groups, search for “any” and you will find there are two new security groups named ANYWHERE_APPROVER and ANYWHERE_TECHICIAN. You need to add users to these security groups to give them access and to be able to login. After you add the users, click on the “Applications” tab in Security Groups and filter by “anywhere”. There is a new application called “Maximo Anywhere” for each security group. Here you can enable and disable security settings such as delete, save and create new records.
Save your changes and now try to login. I tried to login from Google Chrome but I get this error
“System data could not be downloaded. Without system data, you cannot use the app. Restart the app and try to log in again. If the problem persists, contact your system administrator.”
I guess getting Maximo Anywhere to work will be another blog series…
All new installations will vary depending on your current server configurations and Maximo application setups. My setup is one single DEV server with Maximo 7.5, WebSphere, and MS SQL Server running on another server. For most small to mid-size organizations, this is maybe the most common setup for a DEV environment.
So what are my lessons learned?
I followed the document titled “IBM Maximo Anywhere Version 7 Release 5 – Planning, installation, and deployment”. Let me tell you that this document is more technical than it needs to be and didn’t have any good step by step guides on how to install. It provided high level architecture and assumes that you have good understanding of everything before you start. When it did do step by step, it sent you to a URL that was another step by step guide not provided in the document. This was the really frustrating part. So I mostly had to figure it out on my own and make guesses.
Halfway through the install, I found another document titled “Getting Started with Maximo Anywhere 7.5 V4”. This doc can be found in the Maximo Anywhere wiki site. I found that this document is much better in terms of being useful. After reading this document, one step says “IBM recommends that you choose to manually defer the update and deployment option”, which the previous document didn’t mention. Thanks IBM! This would have saved me hours of headache.
Don’t install the Android SDK on the system with any spaces in the path, so “C:/Program Files/Android SDK” is a big “oops”!
WebSphere Liberty Profile and the Maximo application will have conflicts because the Worklight Server is defaulted to run on port 9080 when installed and can’t be changed during the install process, but Maximo is already running on that same port. So if you are running WebSphere, which comes with Maximo, don’t install Worklight server on the same server, unless you want to do more configuring to get it to work.
Since I already have a WebSphere Application Server, I thought it would be best to install Worklight on my existing infrastructure because it is just a DEV environment. But keep in mind that there isn’t a step by step guide for dummies, like myself, to “pre-install” the components in WebSphere for you to then install the Worklight components on. I’m a visual learner, so you will pretty much have to figure it out on your own and have a good understanding of it before you pre-install anything.
And lastly, install the Worklight components BEFORE you attempt to install Maximo Anywhere.
So what’s next? On to configuring and running Maximo Anywhere…