Friday, October 30, 2015

WebSphere Installation - Port 80 is Not Avaialbe


while installing Maximo/WebSphere, you may encounter an issue with Availability of Port (mostly Port 80).

Resolution:

Generic about checking Port Availability:

To check which all ports are being used, run this on command prompt (in windows):
         netstat -an
Output of above command will show all the ports which are in use.

To check a specific port (e.g. Port 80), run the following command (in windows):
         netstat -an | find "port_number"
         netstat -an | find "80"
If above command returns any output, that means port is in us.
If above command doesn't return any output, Port is Free, and can be used.

Work Around for WebSphere Port 80 Issue:

Go to Administrative Tools in Windows
Open Internet Information Services (IIS) Manager
Expand Server Node (Host Name) on the left panel
Expand Sites
Click on Default Web Site
On right panel, click on Bindings
New window will open with List of Bindings, select http, click on Edit button
Change Port from 80 to 8080, click Ok, click Close
Select Server Node (Host Name) on the left panel again and click on Restart Server from the right panel to restart IIS Server,
No reboot is required.

Now you can proceed with the Installation, error should be resolved.


CTGIN8247E: Required Hostname: System hostname is not fully qualified


while Installing WebSphere, you may encounter this issue of Hostname qualifier.

WebSphere installation requires fully qualified hostname which means it should have a DNS entry or domain name i.e. .com after the hostname (computer name).

Workaround:

  1. Go to Computer Properties
  2. You will see a link Change Settings in front of Compute Name (admin access required here)
  3. In the Properties window, you will see a button called Change...,click that
  4. Below the Computer name, you will see another button called More..., click that
  5. This is the place where you give DNS Suffix which makes your Computer Name as Fully Qualified Hostname.
  6. Type com (no dot symbol)
  7. It will require a Reboot/Restart

Thursday, September 3, 2015

Creating a Menu in Maximo

Creating or Modifying a Menu in Maximo


  • The options other than Select Value, that appear when the lookup icon is selected next to a field come from the menu associated to that field.
  • In Application Designer, the properties for a textbox include an option called Menu Type. These Menu Type values are referencing a menu id in the MENUS.xml file.
  • In App Designer in the Select Action menu there is an option to Export System XML.
  • From this option you can select MENUS.xml, save the file to your desktop, and make a copy for a backup.
  • Open the MENUS.xml file to be changed with a text editor. Each menu in Maximo exists as a section in the MENUS.xml file and is referenced by a menu id.
  • If you wanted to modify a menu you could select the application the field that launches this menu resides in, find the field and select the Control Properties tool bar icon.
  • Find the Menu Type value in the properties for that textbox. Make note of this value. Open the MENUS.xml file with a text editor. 
  • Find the menu id from the previous step to find that menu section in the MENUS.XML file. 
  • Copy the menu section, and paste the copied section back into the MENUS.xml file. 
  • Give the copied section a unique menu id. 
  • Delete or Remove the options from the menu to modify the menu to your liking. 
  • Save the MENUS.xml and re import the xml file using the Import XML option in App Designer. 
  • To reference the new menu id you will need to change the Menu Type reference for the field you are associating and launching the menu from to the menu id created for the new menu.

Friday, August 7, 2015

Deleting Maximo Application

Deleting Maximo Application

Deleting an application in Maximo is not possible from Front End and it's not advisable too. You can remove the security rights of that application so that it doesn't appear in Go To list.

Still, if you want to delete an Application in Maximo, you have to accomplish it using SQL Scripts which will be executed in the back-end.

Following are the scripts:
delete from maxapps where app='<appName>';
delete from maxpresentation where app='<appName>';
delete from sigoption where app='<appName>';
delete from applicationauth where app='<appName>';
delete from maxlabels where app='<appName>';
delete from maxmenu where moduleapp='<appName>' and menutype !='MODULE';

To remove Label information from database, run the following queries:

delete from L_SIGOPTION where L_SIGOPTIONID in (select L_SIGOPTIONID from SIGOPTION,L_SIGOPTION  
  where (SIGOPTION.SIGOPTIONID=L_SIGOPTION.OWNERID AND app='<appName>'))

delete from L_MAXLABELSID where L_MAXLABELSID in (select L_MAXLABELSID from MAXLABELS,L_MAXLABELS
  where (MAXLABELS.MAXLABELSID=L_MAXLABELS.OWNERID AND app='<appName>'))

delete from L_MAXMENUID where L_MAXMENUID in (select L_MAXMENUID from MAXMENU,L_MAXMENU where (MAXMENU.MAXMENUID=L_MAXMENU.OWNERID AND moduleapp='<appName>'))

Tuesday, August 4, 2015

Changing maxadmin Password

Changing maxadmin Password


If you don't know maxadmin password then there is no way to get it from any of the property file or config file in maximo.

Then how can we reset it

Answer is - you have to update it to a known encrypted password in database using sql command.

Pre-requisite: you should have write access to MAXUSER table under maximo schema.

Procedure to reset the password:


1) Go to development or any environment for which you know the password of maxadmin or any user.
2) Run the following command to retrieve the encrypted password of known user

               Select userid, password from maxuser where userid = 'anyUser'
               For example: Select userid, password from maxuser where userid = 'MAXADMIN'

3) Copy the encrypted password
4) Go to the environment for which you don't know the maxadmin passwrod.
5) Run the following command to reset the password. Please note your update sql statement will depend on the database which you are working on due to hexa decimal value format of encrypted password.

         Oracle: UPDATE maxuser SET PASSWORD = '<value>' WHERE userid = '<user>';
         SQL Server: UPDATE maxuser SET PASSWORD = 0x<value> WHERE userid = '<user>';
         DB2: UPDATE maxuser SET PASSWORD = x'<value>' WHERE userid = '<user>';

Example:

         Oracle: UPDATE maxuser SET PASSWORD = '10fe6f4d7e6133e64' WHERE userid = 'MAXADMIN';

         SQL Server: UPDATE maxuser SET PASSWORD = 0x10f2121d7e6133e64 WHERE userid = 'MAXADMIN';

         DB2: UPDATE maxuser SET PASSWORD =x'10fe6f46507e6133e64' WHERE userid = 'MAXADMIN';


Thank you for reading...

Wednesday, July 29, 2015

Duplicating a Maximo Business Object or Maximo Table (Maximo 7.5)


Duplicating a Maximo Business Object or Maximo Table (Maximo 7.5)


In Database Configuration application in Maximo, you are not allowed to Duplicate an existing Object. But if there is a requirement, you can accomplish it using database back end operation.

Though object/attributes can be created from backend, but their entry must be populated in metadata tables of Maximo which are: MAXOBJECTCFG, MAXOBJECTCFG, MAXTABLECFG

How are we going to accomplish it:
  1. We will populate the Object and Attribute Data in Maximo Metadata Tables
  2. We will run config db which will create the Object and Attributes in the database
  3. We will create a custom SEQUENCE which will be associated with ID field of the Duplicated Object using back end SQL insert query.

Before we start, detailed knowledge about how database configuration works in Maximo is required.

CHANGED flags in Configuration or Metadata Tables of Maximo
  1. when you add an Object : CHANGED field in MAXOBJECTCFG table will be set to I
  2. when you add an Attribute:  CHANGED field in MAXATTRIBUTECFG table will be set to I
  3. an entry is added in MAXTABLECFG table - no flag in this table 
Note: On Deletion: flag will be set to R, on Change: flat will be set to A

Setting above flags are required when you insert records in Maximo Meta data Tables. Now take export of following tables using SQL Developer or any other tool.

<Ex-Object> here should be replaced with the Object Name which you want to duplicate. In this case, we are going to create a duplicate object of ITEM and we'll give the name to new object as NEWITEM


select * from MAXATTRIBUTECFG where OBJECTNAME ='<Ex-Object>';
select * from MAXOBJECTCFG where OBJECTNAME ='<Ex-Object>';
select * from MAXTABLECFG where tablename ='<Ex-Object>';

Post Export: Changes in MAXATTRIBUTECFG export file

Changes in MAXATTRIBUTECFG export excel
OBJECTNAME Custom Object Name
ATTRIBUTENAME Custom Attribute Name - you may retain the existing attribute name as well
ALIAS it will be same as the ATTRIBUTENAME, change it if you have made a change in ATTRIBUTENAME
AUTOKEY if required, create an Autokey and give that name here
ATTRIBUTENO you can give in sequence
CLASS if an Autokey is associated then provide 1 else it should be 0
CANAUTONUM remove existing class names, provide custom class if any
COLUMNNAME it will be same as the ATTRIBUTENAME, change it if you have made a change in ATTRIBUTENAME
DEFAULTVALUE you may change or retain it's value
DOMAINID you may change or retain it's value
EAUDITENABLED you may change or retain it's value
ENTITYNAME will always be same as the OBJECT name
ESIGENABLED you may change or retain it's value
ISLDOWNER set it to 1 it this custom attribute will have Long Description
ISPOSITIVE applicable for Numbers
LENGTH you may change or retain it's value
MAXTYPE you may change or retain it's value
MUSTBE it's related with SAMEASOBJECT and SAMEASATTRIBUTE concept
REQUIRED you may change or retain it's value
PERSISTENT you may change or retain it's value
PRIMARYKEYCOLSEQ this sequence depends on the business logic behind your application, this is Unique Index Sequence
REMARKS Description of the Attribute which is displayed on the screen when pressed for Help
SAMEASATTRIBUTE it's related with SAMEASOBJECT and SAMEASATTRIBUTE concept
SAMEASOBJECT it's related with SAMEASOBJECT and SAMEASATTRIBUTE concept
SCALE you may change or retain it's value
TITLE Screen Lable of the Custom Attribute
USERDEFINED it will be 1 by default
CHANGED Set it to I - this is most important, I stands for Insert
SEARCHTYPE you may change or retain it's value
MLSUPPORTED you may change or retain it's value
MLINUSE you may change or retain it's value
HANDLECOLUMNNAME Name of the handle column, for supporting DB2 text search.
MAXATTRIBUTEID MAXATTRIBUTECFGSEQ.NEXTVAL - this is most important
RESTRICTED you may change or retain it's value
LOCALIZABLE you may change or retain it's value
ROWSTAMP remove this row from your excel, it's not required
TEXTDIRECTION The orientation of text that you enter into fields. - Not Important
COMPLEXEXPRESSION Type of Complex Expression - Not Important

MAXATTRIBUTECFG data is prepared in excel.

Post Export: Changes in MAXOBJECTCFG export file


Changes in MAXOBJECTCFG export excel
OBJECTNAME Custom Object name
CLASSNAME psdi.mbo.custapp.CustomMboSet OR your custom class name
DESCRIPTION Description of the custom object
EAUDITENABLED you may change or retain it's value
EAUDITFILTER you may change or retain it's value
ENTITYNAME It will be same as the new custom object name
ESIGFILTER not important
EXTENDSOBJECT applicable in case of View
IMPORTED not important, appicable in case you are importing this data through MIF
ISVIEW depends on your business scenario
PERSISTENT depends on your business scenario
SERVICENAME you may change or retain it's value
SITEORGTYPE you may change or retain it's value
USERDEFINED it will be 1 by default
CHANGED IMPORTANT - Change it I (I for Insert)
MAINOBJECT you may change or retain it's value
INTERNAL you may change or retain it's value
MAXOBJECTID MAXOBJECTCFGSEQ.NEXTVAL
ROWSTAMP Remove it, it's not required
TEXTDIRECTION not important

MAXATTRIBUTECFG data is prepared in excel.

Post Export: Changes in MAXTABLECFG export file


Changes in MAXTABLECFG export excel
TABLENAME Custom Object Name
ADDROWSTAMP 1
EAUDITTBNAME you may change or retain it's value
ISAUDITTABLE you may change or retain it's value
RESTOREDATA 0
STORAGEPARTITION don't change
TEXTSEARCHENABLED don't change
LANGTABLENAME you may remove it or change the value to create LANG table
LANGCOLUMNNAME change it if given value for LANGTABLENAME
UNIQUECOLUMNNAME NEWITEMID - Unique Column Name of the Object
ISLANGTABLE depends
MAXTABLEID MAXTABLECFGSEQ.NEXTVAL
ALTIXNAME not required
TRIGROOT NEWITEM - it's important
CONTENTATTRIBUTE not required
ROWSTAMP not required

 
MAXTABLECFG data is also prepared in excel.


As we have all the data prepared in excel, we have to create the Insert SQL Queries. This can be easily done by using Excel functions such as Concatenate.

Once you are done with all the prerequisite tasks described above, run the prepared SQL Insert Query in you database (take database backup first to avoid any issues).

Sequence: Using the folllowing query, create a Sequence which will be associated with NEWITEMID field in MAXATTRIBUTECFG.

1. Insert an entry into Maximo Metadata table
insert into MAXSEQUENCE (TBNAME,NAME,MAXRESERVED,SEQUENCENAME,MAXSEQUENCEID)
values

('OTECPRODMASTER','OTECPRODMASTERID',0,'OTECPRODMASTERSEQ',
MAXSEQUENCESEQ.NEXTVAL);
2. Create a sequence in database
CREATE SEQUENCE OTECPRODMASTERSEQ
      START WITH 1 INCREMENT BY 1 NO MAXVALUE NO CYCLE CACHE 24;

3. It's done now, SEQUENCENAME field in MAXATTRIBUTECFG is Non-persistent i.e. it's not in DB, Maximo business will fetch it's value using relationship and show it in DB Config application.

Once you commit the DB Changes, go to Database Configuration application in Maximo. When you hit Enter on the List tab, you will see newly created custom/duplicated Object NEWITEM and which will be marked for 'To be Added' and in Attributes tab, all the duplicated Attributes will be marked for 'To be Added'.

Now you can start the Admin Mode and run Configure Database. After the configuration is complete, duplicated object NEWITEM is ready to use.

I know this is a lengthy way but I just wanted to document it that duplication of an Object in Maximo can be accomplished using backend.

Thank you for reading...

Thursday, July 9, 2015

CWSIP0362W: The message with id 121332324 can not be deleted from destination CQINBD as the message has been delivered to a consumer.


JMS Messages are stuck in Queue with Removing Status

To Delete these messages:

Stop only the Enterprise Application (the place where you deploy EAR) and keep the Application Instance (MXServer) running.
This will allow you to get access to Bus and Queue with runtime check and then you can delete the messages you want.

Wednesday, July 8, 2015

build all-dist failed while running build for Maximo Anywhere

Error while running build.cmd all dist command

Maximo Anywhere build getting failed

After successful installation of Maximo Anywhere, you need to run 3 build commands in the following sequence:



1)     From MaximoAnywhere\platform\mobile run

build all-gen

2)     From MaximoAnywhere\platform\mobile run

build all-dist

      Deploy the worklight.war file created under your MaximoAnywhere\platform\mobile\target\dist folder to your Worklight Server in WebSphere
       3)  From MaximoAnywhere\platform\mobile run

             build all-deploy

 
But, while running build all-dust command you may get few errors as follows:

1) java.security.NoSuchAlgorithmException: MessageDigest SHA-1 implementation not found

Cause: Your JAVA_HOME is set to JRE or SDK path

Solution: Set JAVA_HOME to JDK folder. This should resolve the issue. You will have to restart the physical machine after applying these changes.

P.S. I appended the JDK folder path in the existing JAVA_HOME path which was having SDK path, but this didn't work for me, so I removed the earlier SDK path and kept only JDK path, then it worked.

After machine gets re-booted, try running build.cmd all-dist it will run successfully.

Tuesday, July 7, 2015

Lost or Forgot WebSphere Console Password

Lost or Forgot WebSphere Console Password


If by any chance you do not know the password for wasadmin to access WebSphere Console, there is a simple trick to get out of this situation.

You just have make a small change in security.xml file which resides under WebSphere Deployment Manager Profile folder, path is:

\ibm\WebSphere\AppServer\profiles\ctgDmgr01\config\cells\ctgCell01

Open security.xml file and search for following keyword:

useDomainQualifiedUserNames="false" enabled=

you will see that enabled is set to "true" as below

useDomainQualifiedUserNames="false" enabled="true"

Change the value of enabled attribute to "false".

Open WebSphere console and you will see that only username is being asked.

After you log in to WebSphere console, you can reconfigure the Security.

Friday, July 3, 2015

Error 403: AuthorizationFailed

Error 403: AuthorizationFailed


After starting MXServer (or any other Application Server in WebSphere), you get the following error:

Error 403: AuthorizationFailed

This is because you have Application Server Security configured in your environment and there seems to be an issue with Security role to user/group mapping configuration.

Solution:

  1. Login to WebSphere
  2. Stop the application server (MXServer in my case)
  3. Go to Applications >> WebSphere enterprise applications
  4. Click on your application (MAXIMO in my case)
  5. Click on Security role to user/group mapping
  6. Check the checkbox for Role - maximouser (in my case)
  7. Select the value as All Authenticated in Application's Realm from the Map special Subjects drop down menu 
  8. Restart the Application Server

It should work now.

Monday, June 29, 2015

CSIDE Demos, Maximo VM, Online VMs


CSIDE Demos are fantastic.

You can use SkyTape to access several online VMs which open in your browser and give feeling of working on a VM on you machine itself.

For this, you will need CSIDE Account i.e. SkyTape Account.

You need to send a mail to cside@us.ibm.com to create a SkyTape account which you will use to access VMs having Maximo and other applications.

Error 500: java.lang.NullPointerException

Error:

Error 500: java.lang.NullPointerException


Solution:

Check if your Database is working and getting connected using maximo user.

Monday, June 22, 2015

Difference between ASSETID and ASSETUID

Difference between ASSETID and ASSETUID


I got confused when I saw ASSET table having extra unique column ASSETUID. Now, I could see 3 unique identifiers for Asset Number in Asset Table in Maximo (v6 onwards).

  • ASSETNUM - is SITE specific and Unique at Site Level (well known, nothing new)
  • ASSETID - default field, created by DB Configuration in Maximo when you create an MBO, associated with a Sequence
  • ASSETUID - this is ACTUALLY the UNIQUE field of ASSET table in Maximo, this is also associated with a Sequence

Key things which I noticed in Maximo:

  • When you add a Long Description to an Asset record, it's ASSETUID is copied to LDKEY attribute of LONGDESCRIPTION table. (in other objects e.g. LOCATIONS, LOCATIONSID is copied to LDKEY)
  • When you Move/Modify any Asset from one Site to another, Asset record gets copied to the other Site and the existing one is set to DECOMMISSIONED. In this case, ASSETID value of both the records will be same but ASSETUID for the new (moved) Asset record will be changed.

So, it can be said that ASSETUID is the UNIQUE field of ASSET table.

thanks for reading...

Thursday, June 11, 2015

Maximo or WebSphere Installation stopped in between...

Running taskrunner.bat file with parameter

what to do next....

This solution will work for following 2 problem scenarios:

1. If Maximo/WebSphere/Fix Pack Installation has stopped in between due to some issue/error
2. If during the installation, you have deferred the Application Deployment or Updatedb (as shown in the screen grab)


Solution:

After Installation is complete whether Successful or Unsuccessful, you can run TaskRunner.bat file. It resumes the installation from the point of the failure or deferred point.

To Run TaskRunner:

1. Using a command prompt, go to  ibm\smp\scripts folder
2. Run TaskRunner command as below:

taskrunner.bat CONTINUE STOPONERROR 


Thanks for reading...

Wednesday, June 10, 2015

IWAE0008E An error occurred reading mbojava.jar

IWAE0008E An error occurred reading mbojava.jar


MxServer got started but maximo application is not starting in WebSphere.

I wrote a class file for Maximo Customization for one of the business requirement. I could build maximo.ear successfully. Later, I deployed it in WebSphere 7 which was also done successfully. Howerver, after starting MXServer I noticed - MXServer is UP but Maximo application is not due to which I was unable to login to my Maximo application.

Following are the errors which were reported in systemout.log file.

org.eclipse.jst.j2ee.commonarchivecore.internal.exception.NestedJarException: IWAE0008E An error occurred reading mbojava.jar from \IBM\WebSphere\AppServer\profiles\ctgAppSrv01\config\cells\ctgCell01\applications\maximo.ear\deployments\maximo

Stack trace of nested exception:
java.io.FileNotFoundException: \IBM\WebSphere\AppServer\profiles\ctgAppSrv01\installedApps\ctgCell01\maximo.ear\mbojava.jar (The system cannot find the file specified.)
    at java.io.FileInputStream.<init>(FileInputStream.java:123)
    at java.io.FileInputStream.<init>(FileInputStream.java:83)
    at org.eclipse.jst.j2ee.commonarchivecore.internal.strategy.DirectoryLoadStrategyImpl.getInputStream(DirectoryLoadStrategyImpl.java:827)
    at org.eclipse.jst.j2ee.commonarchivecore.internal.strategy.NestedArchiveLoadStrategyImpl.getZipInputStream(NestedArchiveLoadStrategyImpl.java:296)
    at org.eclipse.jst.j2ee.commonarchivecore.internal.strategy.NestedArchiveLoadStrategyImpl.safeGetZipInputStream(NestedArchiveLoadStrategyImpl.java:336)
.................................
................................. not writing the entire trace







First, I tried to look for the solution and explored here and there. Finally, I restarted the Node and Resynchronized the nodes and it worked.

Then I restarted my MxServer and it got up along with maximo application and I could log in.

Still finding the reason why this happened....your comments will help me to understand this.

Thank you for reading...
SRVE0068E

SRVE0068E: Uncaught exception created in one of the service methods of the servlet /webclient/login/login.jsp in application MAXIMO

Environment: WebSphere 7, Maximo 7.5, Maximo Anywhere, DB2 9.7

I got this error after installing Worklight Server while installing Maximo Anywhere in my development environment. I could install and see newly created WorkLight Server in WebSphere (where MXServer is displayed). I started both MXServer and newly created WorkLight Server, they both started. However, one of them was only working at a time.

When checked in Systemout.log of MXServer, complete error stack track looked like:

E com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0068E: Uncaught exception created in one of the service methods of the servlet /webclient/login/login.jsp in application MAXIMO. Exception created : java.lang.NullPointerException
    at psdi.server.MXServer.getProperty(MXServer.java:4093)
    at psdi.webclient.system.runtime.WebClientRuntime.getWebClientSystemProperty(WebClientRuntime.java:1736)
    at psdi.webclient.system.runtime.WebClientRuntime.getWebClientSystemProperty(WebClientRuntime.java:1719)
    at com.ibm._jsp._login._jspService(_login.java:246)



Looked for solution, found one link:

http://www-01.ibm.com/support/docview.wss?uid=swg1PK92140

Then came to know that issue is with the number of concurrent database allowed by DB2

I checked if my database is working, to my surprise-my database was not getting connected.

Found one more very interesting blog:

http://db2commerce.com/2012/03/07/introducing-parameter-wednesday-dbm-cfg-numdb/

So it was basically DB2 parameter NUMDB which was stopping me to start my application. By default the value of this parameter was 2 which I changed to 5 using the following command:

db2 update dbm cfg using NUMDB 5

After updating the value, I restarted the DB2 service and I could start both the applications successfull.

Thanks for reading....

Wednesday, May 20, 2015

Changing Welcome Logo and Welcome Message for Maximo



While working on multiple Maximo environments, it's very important to be careful which instance you are working on else you may make some changes on your Production Environment instead of doing it on Test/Dev.

First and foremost Security is obviously the different Passwords but just to give an UI feel, you can do the following for changing the Logo on Maximo Screens, Welcome Messages and such other stuff.

Let's take a look at the original Maximo Login Screen:

 

  Now, how does it look after Changes:


 We will cover the following in this article:

  1. Changing Logo on Maximo Login Page

  2. Changing Logo on Navigation Pages in Maximo

  3. Changing Logo on Session Time Out Page

  4. Changing 'Welcome to Maximo' Message on Login Screen

1. Changing Logo on Maximo Login Page

  • Go to following path \ibm\SMP\maximo\applications\maximo\maximouiweb\webmodule\webclient\login
  • Open login.jsp file
  • Search for ibm-logo-white.gif image name and replace it with New Image Logo name as new-logo-white.gif
  • Search for tivoli_brandmark.png image name and replace it with New Image Logo name as new_tivoli_brandmark.png
  • Search for mx_icon.png image name and replace it with New Image Logo name as new_mx_icon.png
  • Save login.jsp file
  • Click on Images folder under \ibm\SMP\maximo\applications\maximo\maximouiweb\webmodule\webclient\login
  • Paste new images ‘new_tivoli_brandmark.png’ and ‘mx_icon.png’ in Images folder of Login folder
  • Rebuild maximo.ear file and deploy in your J2EE (Application Server)
P.S.
1) Instead of changing the file names in login.jsp file, you can also just replace the Original Images with New Images (with the same name) in Images folder.
2) Size adjustment is a big challenge here, you may need to do this activity multiple times
3) Always have a backup of Logos and .JSP files before making a change


2. Changing Logo on Maximo Navigation Page

  • Go to following path \SMP\maximo\applications\maximo\maximouiweb\webmodule\webclient\skins\tivoli09
  • Click on Images folder, paste new logo image here named as new_ibm-logo-white.gif
  • Click on css folder, open maximo.css file in a text editor
  • Search for titlelogo section having ibm_logo_white.gif image name and replace it with new image name as new_ibm-logo-white.gif
  • Rebuild maximo.ear file and deploy in your J2EE (Application Server)

3. Changing Logo on Session Time Out Page


Go to following path \ibm\SMP\maximo\applications\maximo\maximouiweb\webmodule\webclient\login
Open exit.jsp file, search for image ibm-logo-white.gif and replace name with new image name as new_ibm-logo-white.gif
Rebuild maximo.ear file and deploy in your J2EE (Application Server)

4. Changing 'Welcome to Maximo’ message on Login Page

          This can be achieved in 2 ways:

4.1. From Maximo Application Front End

  • Log into Maximo – Go To – System Configuration – Platform Configuration - Database Configuration – Message – filter on Message Key for 'welcomemaximomessage'
  • Update the Value from Welcome to Maximo to desired message
  • Sign Out and see the changes on the Maximo Login Screen

4.1. From Maximo Application Front End

  • Execute the following SQL Scripts in your database:
 
UPDATE MAXMESSAGES SET VALUE='Welcome to knowMaximo' WHERE MSGKEY='welcome';

UPDATE MAXMESSAGES SET VALUE='Welcome to knowMaximo, {0}' WHERE MSGKEY='welcomeusername';

UPDATE MAXMESSAGES SET VALUE='Welcome to knowMaximo' WHERE MSGKEY='welcomemaximomessage';

UPDATE L_MAXMESSAGES SET VALUE='Welcome to knowMaximo' WHERE OWNERID=(SELECT MAXMESSAGESID FROM MAXMESSAGES WHERE MSGKEY='welcome');

UPDATE L_MAXMESSAGES SET VALUE='Welcome to knowMaximo, {0}' WHERE OWNERID=(SELECT MAXMESSAGESID FROM MAXMESSAGES WHERE MSGKEY='welcomeusername');

UPDATE L_MAXMESSAGES SET VALUE='Welcome to knowMaximo' WHERE OWNERID=(SELECT MAXMESSAGESID FROM MAXMESSAGES WHERE MSGKEY='welcomemaximomessage');


  • Since this is a Database Update, no Build & Deploy is required, just Sign Out and see the changes on the Maximo Login Screen