IBM Support

Installing Maximo 7.6 to Oracle WebLogic 12c

Technical Blog Post


Abstract

Installing Maximo 7.6 to Oracle WebLogic 12.1.3.0

Body

There are five parts to installing Maximo to WebLogic.

Table of Contents

Part 5. Deploy the Maximo ear files to WebLogic


Parts 1 and 1.5 are below, nice and short. Since IBM includes WebSphere 8.5.5.3 with Maximo 7.6, the Configuration Tool configures it for Maximo, and  you can also create WebSphere clusters with the Configuration Tool. The Configuration Tool does not configure WebLogic.

image

Therefore, the focus of this articles is configuring WebLogic and deploying Maximo 7.6. I'm made a couple of assumptions before preparing the process:

  • You will be creating a Maximo domain.
  • You will install Maximo to the Administration Server in that domain.

If you already have a WebLogic environment, you will likely not follow those steps. For example, you wouldn't install Maximo to your Admin server, but instead create a managed server or cluster. The key parts for you will be creating the Maximo server (MXServer) and JMS queues, and configuring Maximo.


Part. 1. Install Oracle (r) WebLogic

Before configuring WebLogic for Maximo, install WebLogic 12c using the latest version of Oracle JDK 8, which is required for Maximo 7.6.


Part 1.5. Install Maximo Asset Management 7.6

Using the Launchpad and IBM Installation Manager, install Maximo 7.6. Do not install WebSphere Application Server. When complete, do not launch the Configuration Tool.


Part 2. Configure Oracle (R) WebLogic
2.1 Create a WebLogic Domain
2.1.1. Start Configuration Wizard C:\Oracle\Middleware\Oracle_Home\wlserver\common\bin\config.exe

2.1.2. Create Domain
image
Change domain name to maximoserver. Click Next.

2.1.3 Templates
image
Keep only Basic WebLogic Server Domain - 12.1.3.0 [wlserver] * selected. Click Next.

2.1.4 Administrator Account
image
Enter a username and password. (I kept the default weblogic name and used Manager1 for password).

2.1.5 Domain Mode and JDK
image
Select Production. WebLogic will choose the JDK that was used to install it. As I said yesterday, make sure that the JDK is Oracle HotSpot. It must be JDK 1.7 because that is what Maximo 7.6 uses.

2.1.6 Advanced Configuration
image
I checked off Administration Server here. It is not necessary to do so.

2.1.7 Configuration Summary
image
Look it over, make any changes that are needed, and click Create.

2.1.8 Configuration Progress
image

2.1.9 Configuration Successful
image

Do not check Start Admin Server. Click Finish.


2.2 Configure WebLogic and start the Admin Server

2.2.1 (Oracle (R)Database only ) Copy the oraclethin.jar file.

Windows: Copy the oraclethin.jar file from the administrative workstation (default C:\IBM\SMP\maximo\applications\maximo\lib\) to the Oracle server directory (using install location above, C:\Oracle\Middleware\Oracle_Home\wlserver\server\lib).

Unix: Copy the oraclethin.jar file from the administrative workstation (default /opt/IBM/SMP/maximo/applications/maximo/lib/) to the Oracle server directory (using install location above, /home/oracle/Oracle/Middleware/Oracle_Home/wlserver/server/lib).

2.2.2 Update setDomainEnv.cmd|sh.

Navigate to Windows: C:\Oracle\Middleware\Oracle_Home\user_projects\domains\maximoserver\bin Unix: /home/oracle/Oracle/Middleware/Oracle_Home/user_projects/domains/maximoserver/bin

Right-click and edit (do not double-click) Windows: setDomainEnv.cmd or Unix: setDomainEnv.sh.

Using your text editor, search for and replace the following entries:


Windows (Oracle Database only) Search for

if NOT "%EXT_PRE_CLASSPATH%"=="" (
    if NOT "%PRE_CLASSPATH%"=="" (
        set PRE_CLASSPATH=%EXT_PRE_CLASSPATH%;%PRE_CLASSPATH%
    ) else (
        set PRE_CLASSPATH=%EXT_PRE_CLASSPATH%

Update the last set PRE_CLASSPATH to include the parameters below

set PRE_CLASSPATH=%WL_HOME%\server\lib\oraclethin.jar

Unix (Oracle Database only) Search for

if [ "${EXT_PRE_CLASSPATH}" != "" ] ; then
    if [ "${PRE_CLASSPATH}" != "" ] ; then
        PRE_CLASSPATH="${EXT_PRE_CLASSPATH}${CLASSPATHSEP}${PRE_CLASSPATH}"
        export PRE_CLASSPATH
    else
        PRE_CLASSPATH="${EXT_PRE_CLASSPATH}${CLASSPATHSEP}$%WL_HOME%/server/lib/oraclethin.jar"
        export PRE_CLASSPATH
    fi
fi

Update the last PRE_CLASSPATH to include the parameters below

PRE_CLASSPATH="${EXT_PRE_CLASSPATH}${CLASSPATHSEP}$%WL_HOME%/server/lib/oraclethin.jar"

Increase the Java Heap parameters by searching for MEM_ARGS and setting the parameters:

Search for and change the second instance

Windows:

WLS_MEM_ARGS_64BIT=-Xms256m -Xmx512m

to

WLS_MEM_ARGS_64BIT=-Xms4096m -Xmx4096m

Unix:

WLS_MEM_ARGS_64BIT=-Xms256m -Xmx512m

to

WLS_MEM_ARGS_64BIT=-Xms4096m -Xmx4096m

Search for and change the first instance

Windows:

set MEM_PERM_SIZE_64BIT=-XX:PermSize=128m

to

set MEM_PERM_SIZE_64BIT=-XX:PermSize=512m

Unix:

MEM_PERM_SIZE_64BIT="-XX:PermSize=128m"

to

MEM_PERM_SIZE_64BIT="-XX:PermSize=512m"

Increase Permanent Generation setting for Garbage collection (JDK 1.7 only)

Search for and change the first instance

Windows:

set MEM_MAX_PERM_SIZE_64BIT=-XX:MaxPermSize=256m
to
set MEM_MAX_PERM_SIZE_64BIT=-XX:MaxPermSize=512m

Unix:

MEM_MAX_PERM_SIZE_64BIT="-XX:MaxPermSize=256m"
to
MEM_MAX_PERM_SIZE_64BIT="-XX:MaxPermSize=512m"


Windows only:

Search for set JAVA_OPTIONS=%JAVA_OPTIONS% %JAVA_PROPERTIES%. Insert an option directly after this string, as follows:

-Dcom.sun.xml.namespace.QName.useCompatibleSerialVersionUID=1.0

The entry looks like this example when complete:

set JAVA_OPTIONS=%JAVA_OPTIONS% %JAVA_PROPERTIES% -Dcom.sun.xml.namespace.QName.useCompatibleSerialVersionUID=1.0 -Dwlw.iterativeDev=%iterativeDevFlag% -Dwlw.testConsole=%testConsoleFlag% -Dwlw.logErrorsToConsole=%logErrorsToConsoleFlag%


Save and close the setDomainEnv.cmd|.sh file.

2.2.3 Verify settings by starting Oracle WebLogic Server. To ensure that the edits that you made to the previous Oracle WebLogic Server files were accurate, start the Oracle WebLogic Server.

Start a command prompt at C:\Oracle\Middleware\Oracle_Home\user_projects\domains\maximoserver\bin

startWebLogic.cmd

It has completed startup when you see <Notice> <WebLogic Server> <BEA-000360) <The server started in RUNNING mode.>

b.Log in to the WebLogic Administration Console at http://localhost:7001/console with the username and password you set during configuration.

2.2.4. Create a boot.properties file
a. In <weblogic_home>\user_projects\domains\maximoserver\servers\AdminServer, create a directory called \security

Create a text file called boot.properties. In that file, put two lines, for example:

username=weblogic

password=Manager1

When the Admin Server is started, the username and password will be encrypted.


Part 3. Create MXServer JMS and email listener queues

Log in to the WebLogic console

3.1 Create MXServer

In Change Center, click Lock & Edit

Lock and Edit

In Domain Structure, expand Environment. Click Servers.

Domain Structure Servers

In Summary of Servers, click New. For Server name, enter MXServer. For Server Listen Port, enter 7003.

Create a New Server

Click Next, then click Finish.

In change Center, click Activate Changes.

24 Activate Changes

3.2 Create Persistent Stores

In Change Center, click Lock & Edit.

In Domain Structure, expand Services  and Messaging. Click Persistent Stores.

25 Persistent Stores

From the New dropdown menu, select Create FileStore. Enter the following information:

Name:    sqinstore

Target:    MXServer

Directory:    C:\Oracle\Middleware\Oracle_Home\user_projects\domains\maximoserver\filestores (or the location of your choice)

Click OK.

Repeat for three more file stores:

Name Target
sqoutstore MXServer
cqinstore MXServer
lsnrstore AdminServer

In the Change Center, click Activate Changes.

Persistent stores

3.3 Create JMS Servers

In Change Center, click Lock & Edit.

In Domain Structure, expand Services, then Messaging. Click JMS Servers.

JMS Servers

Click New. Enter the following information:

Name: sqinserver

Persistent Store: sqinstore

Click Next.

Target: MXServer

Click Finish.

Click new sqinserver server

Click Thresholds and Quotas tab

In Bytes Maximum, enter 20% or below of the allotted JVM heap size (838861 bytes for a 4096m JVM).

Click Save.

Repeat for three more JMS Servers:

Name Target
sqoutserver MXServer
cqinserver MXServer
lsnrstore AdminServer
 

In the Change Center, click Activate Changes

JMS Servers

3.4 Create JMS Resources

3.4.1 Create JMS Modules. In Change Center, click Lock & Edit.

On the left, expand Services, then Messaging. Click JMS Modules.

JMS Modules

Click New
Name: intjmsmodule
Click Next
Target: MXServer
Check "Would you like to add resources to this JMS system module?" and click Finish

Click New
Name: lsnrjmsmodule
Click Next
Target: AdminServer
Check "Would you like to add resources to this JMS system module?" and click Finish

JMS Modules

3.4.2 Create Connection Factories. Click intjmsmodule.

Under Settings for intjmsmodule>Summary of Resources, click New.
Select Connection Factory.
Click Next
Name: intjmsconfact
JNDI Name: jms/maximo/int/cf/intcf
Click Next.
Click Finish.

Click lsnrjmsmodule.

Under Settings for intjmsmodule>Summary of Resources, click New.
Select Connection Factory.
Click Next.
Name: lsnrconfact
JNDI Name: jms/mro/int/lsnr/lsnrcf
Click Next.
Click Finish.

3.4.3 Create JMS Queues. Click JMS Modules, then intjmsmodule. Click New.
Select Queue.
Click Next.
Name: sqin
JNDI Name: jms/maximo/int/queues/sqin
Click Next.
Create a New Subdeployment, which should be populated with sqin.
Click OK.
Target: sqinserver
Click Finish.

Repeat for three more JMS Queues:

Name JNDI Name Target
sqout jms/maximo/int/queues/sqout sqoutserver
cqin jms/maximo/int/queues/cqin cqinserver
cqinerr jms/maximo/int/queues/cqinerr cqinserver

Click JMS Modules, then intjmsmodule. Click New.
Select Queue.
Click Next.
Name: lsnrqueue
JNDI Name: jms/mro/lsnr/qin
Click Next.
Create a New Subdeployment, which should be populated with lsnrqueue.
Click OK.
Target: lsnrserver
Click Finish.

Additional configuration

Under intjmsmodule>Summary of Resources, click the cqin queue
Click the Delivery Failure tab.
Set the redelivery limit to 5.
Set the error destination to cqinerr.
Click Save.

Under intjmsmodule>Summary of Resources, click intjmsconfact.
On the Client tab, change Maximum Messages per Session to -1.
On the Transactions tab, make sure that XA Connection Factory Enabled is checked.
Click Save.

In the Change Center, click Activate Changes

image

From here, set up the email listener queue as documented in the Installation Guide.

When finished, log out of the Administration Console and stop and restart the WebLogic server.


Part 4. Deploy Maximo Asset Management 7.6.0

1. (Oracle (R) Database and Microsoft (R) SQL Server only) Create a Maximo database following the instructions in the Installation guide.

2. Launch the Configuration Tool.

image

3. Click Define Deployment Environment.

image
a. For database type, select the type of database you are installing Maximo to. (In this example, I am using Oracle Database 12c.)
b. for Define the Deployment Manager Server host, select WebLogic
c. If you wish, define a default password. It is not required (you can enter individual passwords for each account later).
d. Click Finish.

4. Configure General Product Information
image
a. (optional) Enter the Workflow administrator email address
b. (optional) Enter the SMTP server host name
c. (optional) Check Create sample data in the database.
d. Click Next.

5. Configure Database
image
Enter the settings that are correct for your database. (In this example, I am using Oracle Database 12c.) Click Next.

6. Configure Application Security
image
If you checked Define a default password on the first screen, this will be grayed out. Otherwise, enter the passwords for the administrative users, plus whether you want to Enable restrictive password policy. Click Next.

7. Configure a Base Language
image
Set your base language here. (I'm opting for English.) Click Next.

8. Add Additional Languages
image
Check any additional languages you want to add. (I don't.) Click Next.

9. Apply Deployment Operations
image
I always uncheck all selections, then re-check Validate the configuration properties. It's not necessary, but I want to check the settings after they have been validated to make sure all entries are correct. After they are double-checked, I come back to this screen again and check every box.
While the configuration Tool can populate your Maximo database, it cannot deploy ear files to WebLogic servers.
 

image

Ignore that error! The longest wait here is usually database creation.

10. Configuration Operations successful!

image

Another reminder that you have to deploy the ear files manually.


Part 5. Deploy the Maximo ear files to the WebLogic console

See Technote Deploying the Maximo.ear file to WebLogic 12.1.1

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSLKT6","label":"Maximo Asset Management"},"ARM Category":[{"code":"a8m50000000CbKNAA0","label":"Install"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.6.0","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

UID

ibm11113843