When a custom image must ship with a traditional Maximo installation, add it to the maintained Maximo source tree before rebuilding the EAR. A file copied only into an expanded application-server directory can disappear with the next deployment.
This article concentrates on packaging the files. If you also need to place the image on a screen, see Add custom images to Maximo applications.
Start with the shared image directory
Place an image used by the Maximo web client in:
<MAXIMO_ROOT>\applications\maximo\maximouiweb\webmodule\webclient\images<MAXIMO_ROOT> is commonly the SMP\maximo directory on a Windows administrative workstation. Keep the image in the source tree used for every build and include it in your customization source control or upgrade manifest.
Use a browser-friendly format and optimize the file before deployment. Give it a descriptive name without spaces. Keep the filename and extension case consistent because the application server may run on a case-sensitive filesystem.
Add skin-specific copies only where needed
Traditional Maximo releases can also load images from the active skin. The procedure covered these skin directories:
<MAXIMO_ROOT>\applications\maximo\maximouiweb\webmodule\webclient\skins\tivoli09\images
<MAXIMO_ROOT>\applications\maximo\maximouiweb\webmodule\webclient\skins\tivoli13\images
<MAXIMO_ROOT>\applications\maximo\maximouiweb\webmodule\webclient\skins\iot18\imagesCopy the file to a skin directory when the image is referenced as a skin asset, overrides an existing skin image, or must remain available while users can select that skin. There is no benefit in filling directories for skins your environment cannot use.
The available skins depend on the Maximo release and configuration. For example, IoT18 was introduced with Maximo 7.6.1. Check the directories in your own installation rather than creating a skin folder that the release does not contain.
Account for right-to-left layouts
Each traditional skin can contain an rtl image directory for right-to-left languages:
<MAXIMO_ROOT>\applications\maximo\maximouiweb\webmodule\webclient\skins\tivoli09\images\rtl
<MAXIMO_ROOT>\applications\maximo\maximouiweb\webmodule\webclient\skins\tivoli13\images\rtl
<MAXIMO_ROOT>\applications\maximo\maximouiweb\webmodule\webclient\skins\iot18\images\rtlAt minimum, make sure an image referenced by an RTL layout is present in the corresponding directory. Directional icons need more thought. Maximo's RTL styling can mirror an image, so the source placed in rtl might itself need to be mirrored to produce the intended result in the browser.
This example uses the ac22_rollingProject icon. The normal source image is:
The source prepared for the RTL directory is mirrored:
Test the rendered page in an actual right-to-left locale. Whether an arrow should preserve its physical direction or follow the reading direction depends on what the icon means.
Include mobile skin assets when applicable
Older traditional deployments can have a separate mobile skin directory:
<MAXIMO_ROOT>\applications\maximo\maximouiweb\webmodule\webclient\skins\mobile\imagesAdd the image there only if that mobile interface references it. This directory is part of the legacy web client and is unrelated to current Maximo Mobile applications.
Keep image extensions lowercase
Use lowercase extensions even when the descriptive part of the filename contains capitals:
MyFirstImage.jpg
MySecondImage.png
MyThirdImage.gifThe legacy Maximo image resolver can treat an unrecognized extension as a missing extension and append .gif. A name such as MySecondImage.PNG can therefore be requested as MySecondImage.PNG.gif. Lowercase extensions also avoid case mismatches when an EAR built on Windows is deployed to Linux or UNIX.
Build and deploy the EAR
After adding the files:
- Back up the deployed application and keep a record of the new files.
- Stop or drain application traffic according to your deployment procedure.
- From
<MAXIMO_ROOT>\deployment, run the EAR build command for the application server and platform. - Deploy the generated
maximo.earto every application server or cluster member. - Start the application, clear any relevant browser or proxy cache, and request the image directly before testing it in the Maximo screen.
For example, a traditional Windows build commonly uses:
buildmaximoear.cmdUse the command documented for your Maximo and application-server combination. A successful local build does not prove that every cluster member received the new EAR.
If the image is missing, inspect the browser's network request. A 404 normally points to the wrong directory, filename case, active skin, or an old EAR. If the URL ends in an unexpected .gif, check the source filename's extension.
Maximo Manage uses a customization archive
Containerized Maximo Manage does not use this manual EAR workflow. Put the image in a customization archive under the MAS skin directory:
applications/maximo/maximouiweb/webclient/skins/mas8/images/Apply the archive through the Maximo Application Suite administration process and wait for workspace reconciliation. Do not edit a running pod because the change will not survive reconciliation or replacement.
The exact Maximo release used to test these paths and extension behavior is unknown. Verify them against your installed release.

