Thursday 10 April 2014

Import classifications in Maximo 7.x

While importing classifications in Maximo 7.1 version, I was facing many problems like class structure is blank and hierarchal problems.

Firstly, my requirement is to load classifications with given hardcoded class structure id rather than auto generated integer number.

Secondly, need to import parent and child hierarchal structure.

1.       Duplicate MXCLASSIFICATION Object Structure and name it as per your requirement, remove the Inbound processing class.
2.       In ‘Restrict Attributes’ menu option, In the Source Object List, select CLASSSTRUCTURE
3.       Uncheck Restrict checkbox and check Override checkbox for below fields:
a.       Classstructureid
b.      Parent
4.     - Select Action > Exclude / Include Fields
5.     In the Source Object List, select CLASSSTRUCTURE
6.     In the Persistant Fields sub-tab, look for HASCHILDREN and UNCHECK the EXCLUDE checkBox. This will include the field in the schema.

Tuesday 8 April 2014

Using discardable MBOs

Whenever we are going to get MboSet for traversing purpose, then it is better to make mbo set discardable.
By this, Mboset will not cache the MBOs as it fetches from directly from database. This will minimise the JVM memory usage.

Discardable Mbo Sets used for traversing forward only and not to be edited/saved. Discardable Mbo Sets are always read only.

Sample Code:

MboSetRemote poSet = getMboSet("PO");
poSet.setFlag(MboConstants.DISCARDABLE, true);
......
.........
............
.................
poSet.close();

Disable Maximo 7.x login page autocomplete

Some times clients will ask not to store either user name or password in Maximo login page.

There are two ways to do disable auto complete:

1. By using IE settings. Hopefully every body aware about this. But this is applicable to entire Internet Explorer, irrespective of any login page.

2. Another way is by modifying Maximo login.jsp.

Source: IBM
Link: http://www-01.ibm.com/support/docview.wss?uid=swg21587221 

1. Modify the login.jsp file and add autocomplete="off" to the input lines pointed by the arrow below. Login.jsp is usually located
at <MAXIMO_Root>\applications\maximo\maximouiweb\webmodule\webclient\login\ directory:

Existing login.jsp:


After changes:



2. Save the modified file.
3. Stop the MXServer
4. Rebuild maximo ear (make a backup of the existing maximo ear before rebuilding)
5. Deploy the new maximo ear
6. Start the MXServer
7. Clear the browser cache.

The auto-complete will be disabled. You will have to type in the username/password every time logging in to Maximo.

Sort maximo start centre inbox assignments

Sorting Maximo 7.x start center inbox assignments :

I used below logic to set order by to due date (Descending) on start centre inbox assignments.

Create a custom class and extend WFAssignmentSet. Write a code in getInboxAssignment() method.

Sample Code:

package test.workflow;

import java.rmi.RemoteException;

import psdi.mbo.MboServerInterface;
import psdi.util.MXException;
import psdi.workflow.WFAssignmentSet;
import psdi.workflow.WFAssignmentSetRemote;

public class TestWFAssignmentsSet extends WFAssignmentSet implements WFAssignmentSetRemote
{
     public TestWFAssignments(MboServerInterface ms) throws RemoteException {
super(ms);
}

public void getInboxAssignments() throws RemoteException, MXException
         {
            super.getInboxAssignments();
            setOrderBy(" DUEDATE desc");
            reset();
         }
}

Error deploying maximo.ear file in Websphere

Error:
A composition unit with name MAXIMO already exists. Select a different application name.
ADMA5011I: The cleanup of the temp directory for application MAXIMO is complete
ADMA5014E: The installation of application MAXIMO failed.

Delete caches in websphere:
1. Stop the maximo server
2. Go to services.msc  : stop ctgCellManager01 and node agent
3. Delete Maximo directory -- IF FOUND IN BELOW PATH:    
  • <Drive>:\IBM\WebSphere\AppServer\profiles\ctgDmgr01\config\cells\ctgCell01\blas
  • <Drive>:\IBM\WebSphere\AppServer\profiles\ctgDmgr01\config\cells\ctgCell01\cus
4. Delete maximo.ear -- IF FOUND IN BELOW PATH:
  • <Drive>:\IBM\WebSphere\AppServer\profiles\ctgAppSrv01\config\cells\ctgCell01\applications
  • <Drive>:\IBM\WebSphere\AppServer\profiles\ctgDmgr01\config\cells\ctgCell01\applications
5. Delete all files in the following directories:
  • <Drive>:\IBM\WebSphere\AppServer\profiles\ctgAppSrv01\temp
  • <Drive>:\IBM\WebSphere\AppServer\profiles\ctgAppSrv01\wstemp
  • <Drive>:\IBM\WebSphere\AppServer\profiles\ctgAppSrv01\config\temp
  • <Drive>:\IBM\WebSphere\AppServer\profiles\ctgDmgr01\temp
  • <Drive>:\IBM\WebSphere\AppServer\profiles\ctgDmgr01\wstemp
  • <Drive>:\IBM\WebSphere\AppServer\profiles\ctgDmgr01\config\temp
6. Start services. I think automatically server will start. So stop the server again.
7. Deploy maximo.ear file. After successful deployment, save the changes into master repository.
8. Start the maximo server.
   

Maximo SOAPUI error javax.xml.ws.WebServiceException

SOAPUI error while sending payload to below url (in cluster environment) http://localhost:9080/meaweb/services/MXASSET Error : <f...