Technical Blog Post
Does your Maximo EAR take 60+ minutes to deploy? How about 6 minutes?
Did you read that title correctly? That's correct, you did.
We do have a process you can follow to allow your EAR to deploy within 6 minute.
Please note: This should only be done for testing purposes if there is a requirement to deploy EAR several times a day. If your business does not have this need, then this process is not recommended and this is not supported when applying to production.
There is a way where the deployment can be reduced to around 5 to 6 minutes, but there are a few configurations and responsibilities that are now left for clients since it takes out the "Automation" factor. This process must be done carefully. With this new process - there's no need to do the ejbdeploy process every time(which is included within the deploy process). After the first time configuration, this would no longer be required. Let's start the steps:
If you have Maximo Spatial installed, you can follow the steps outlined here before proceeding
Perform the following steps between the lines once, and then you're set.
Steps to complete:
1) Run the buildmaximoear.cmd to build the maximo.ear file
2) When this file is compiled, you will need to pass this through the EJBDeploy process manually by doing the following steps:
To complete the EJB:
1) Go to the was\AppServer\bin folder
2) Run the ejbdeploy from the folder above and follow the following: ejbdeploy <source ear file> <working directory> <output ear>
Eg: ejbdeploy maximo\deployment\default\maximo.ear maximo\deployment\default\was maximo1.ear
(This works only a system where BOTH WebSphere and the SMP directory are installed to the same server. If you don't have it set up that you, copy the maximo.ear file from your administrative workstation to the server that WebSphere is installed on)
Locations to note:
The ejbdeploy command is located in the Was\AppServer\bin folder
The maximo.ear is located in the maximo\deployment\default folder
The maximo1.ear will be located in the current directry ( most likely AppServer\bin)
After doing this, locate the new ear file - maximo1.ear, and within the ear (rename to .zip from .ear to view contents), you will notice a few ejb.jars.
1) Copy the mboejb.jar and paste it outside of the ear.
2) Extract the contents of the JAR into another folder.
3) Copy this folder, and paste it in the location: maximo\applications\maximo\mboejb\ejbmodule (Replace the existing files)
From this point, this is what you can do regularly whenever you need to deploy the ear. Firstly, proceed to do the buildmaximoear.cmd once again.
Has the Step above just completed? Excellent! Start the clock!
Let's proceed to do the deploy in websphere.
Since we have done the steps above, we no longer need to have to run the ejbdeploy process, so we will need to exclude this from the deploy process.
To do this, please remember to uncheck the "Deploy enterprise beans" on Step 1 - Select Installation options. (See Image below)
You can continue to complete the deploy process.
After this is completed, when the ear needs to be rebuild, you only need to do the second half of these steps only.
Please Note - Responsibilities of the client:
1) Process should be followed very carefully.
2) The process has been reduced to 5 minutes, however this takes the automation process out and therefore it's now the responsibility of the client to ensure that the EJBs have not changed.
3) In every fix pack or IFIX(code change)...someone need to make sure if there are any changes to the EJB files by doing a file compare and if so, then the ejbdeploy has to be re-run(Initial steps) and new files need to be copied and used as per the steps above once again.
Thanks for reading!