Maximo Anywhere Components

advertisement
IBM® Cloud and Smarter Infrastructure
Getting Started with
Maximo Anywhere 7.5
Document version 3.0
Anna Biazeti
STSM, Smarter Infrastructure Architecture
William Cary
Solution Architect Council Leader
Bradley K. Downing
Senior Managing Consultant
© Copyright International Business Machines Corporation 2013.
US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule
Contract with IBM Corp.
Getting Started with Maximo Anywhere 7.5
Contents
Introduction ..................................................................................................................................... 3
Technical Overview ........................................................................................................................ 3
Architectural Principles .............................................................................................................. 3
IBM Worklight mobile application platform .............................................................................. 4
IBM Worklight Components Overview...................................................................................... 5
Worklight Studio..................................................................................................................... 5
Application Center .................................................................................................................. 6
Worklight used by Maximo Anywhere....................................................................................... 7
Maximo Anywhere Components ................................................................................................ 8
Recommended Deployment Scenarios ....................................................................................... 9
Product Licensing Metric and Compliance Considerations............................................................ 9
Use Scenarios ............................................................................................................................ 10
License Limitations Pertaining to Worklight ............................................................................ 10
Recommendations and Best Practices .......................................................................................... 10
Device Encryption .................................................................................................................... 10
Secure Communication Protocol (SSL) .................................................................................... 11
Enterprise DMZ ........................................................................................................................ 11
Worklight Server Installation .................................................................................................... 11
Maximo Anywhere Installation ................................................................................................ 11
System Requirements and Supported Configurations .................................................................. 12
Installation Procedures .................................................................................................................. 12
Worklight Server/DB2/Multi Instance ...................................................................................... 14
Worklight Server/DB2/Multi Schema ...................................................................................... 16
Worklight Server/Oracle/Multi Instance................................................................................... 19
Worklight Server/Oracle/Multi Schema ................................................................................... 21
Maximo Anywhere Install/Deployment ................................................................................... 23
Installing and Configuring Work Light Studio ......................................................................... 25
SSL Configuration .................................................................................................................... 26
Enabling Data Encryption for Maximo Anywhere ................................................................... 27
Post Installation Query Configuration ...................................................................................... 28
Cautions and Limitations .............................................................................................................. 29
Troubleshooting ............................................................................................................................ 28
Logging ..................................................................................................................................... 30
Known Problems / Explanations or Solutions .......................................................................... 31
2
Getting Started with Maximo Anywhere 7.5
Introduction
IBM Maximo Anywhere 7.5
Maximo Anywhere 7.5 is built on IBM’s Worklight mobile development platform. This
development approach enables the Maximo Anywhere mobile roadmap to include all of IBM’s
Smarter Infrastructure (SI) solutions. The core of IBM SI includes Maximo, Maximo Industry
Solutions, SmartCloud Control Desk, and TRIRIGA. With this single mobile solution, all of
these tools can be enhanced with mobile capabilities to satisfy mobile strategies across your
entire enterprise
In this initial release of Maximo Anywhere, the Android mobile operating system 4.x or later is
supported for Maximo Work Management. Our strategy involves the eventual support for all of
the more popular mobile operating systems (Android, Apple iOS, and Microsoft Windows
operating), thus allowing you full freedom to utilize the most appropriate devices for your
industry. The Maximo Anywhere product will support all variations of the connected and
disconnected environments that you work with today.
The new technology in Maximo Anywhere provides a configuration tool set which allows you to
be in total control of how your users access IBM SI Solutions. You will be able to configure our
mobile apps to suite your users specific roles and enterprise business requirements.
The intent of this guide is to provide a condensed, straight forward step by step approach to
deploying Maximo Anywhere in your enterprise. Since there is considerable documentation
available through IBM’s InfoCenter, Support documents, and DeveloperWorks Wiki’s and more,
this document will leverage those resources as references when you may like additional
information. This document may be printed to simplify use in an installation scenario but may be
most valuable when used online where the links can be accessed.
Additional Resources:
Maximo Anywhere Wiki on DeveloperWorks
http://tinyurl.com/MaximoAnywhere75Wiki
Maximo Anywhere Documentation on InfoCenter
http://tinyurl.com/MaximoAnywhere75Documentation
Technical Overview
Architectural Principles
IBM has developed several architectural principles to enhance the user experience. These
principles employed in the platform and application development process
3
Getting Started with Maximo Anywhere 7.5
Mobile Device and Experience
IBM chose the Worklight Platform as the starting point for Smarter Infrastructure (SI) Mobile
Solutions. The SI Mobile Apps are Hybrid Applications (Web Standards + bridge to native
features). IBM Seeks to employ Persona and Task based apps that are simple & intuitive.
Connectivity and Data Synchronization
IBM took great care in considering when the device connects to ensure data integrity through the
synchronization process while maximizing device battery life, by leveraging the Worklight 5.0.6
data management APIs for local storage. The SI Mobile solution uses these APIs and augments
the solution with planned and intermittent disconnected scenarios.
IBM Worklight mobile application platform
Accelerate Development
•
•
•
Web, hybrid, and native development: open, flexible, standard-based, multi-screen/omnichannel
Functional testing
Development lifecycle tools and integration
Facilitate App Security and Trust
•
•
Server-enforced authentication
App authenticity and user-app-device binding
4
Getting Started with Maximo Anywhere 7.5
• Secure and syncable on-device storage
• App version enforcement
Enable User Engagement
•
•
Unified push and SMS notifications
Geo-location and context collections and intelligence
Support Mobile Analytics
•
•
•
Efficient acquisition of analytics data
Development, operational, and business analytics
Offline and online event management integration
IBM Worklight goes beyond mobile app UI creation to deliver mobile optimized, standardsbased, middleware and tools for enterprise-grade mobile applications and services creation
IBM Worklight Components Overview
Worklight Studio





Eclipse Based IDE
Environment-specific optimization
3rd-party library integration
Drag-and-drop UI construction
Device SDK integration
5
Getting Started with Maximo Anywhere 7.5
 Supports auto-complete and validation
Worklight Server- Adapters





Universality
Diverse support for enterprise integration technologies and back-end information systems
Read-only & Transactional Capabilities
Adapters support read-only and transactional access modes to back-end systems
Fast Development
Simple XML configuration and JavaScript APIs
Security
Fine-grained access controls
Transparency
Uniform exposure of back-end data for all adapter types
Encrypted and synched on-device data storage
Embedded JSON mobile database:
 JavaScript APIs to store, query and update data
 Multiple user support on the same device
 Supports data encryption
 Bi-directional data sync for simplified off-line operations
Direct Update On-device Logic and User Experience
 Web resources packaged with app to ensure initial offline availability
 Web resources transferred to app's cache storage
 App checks for updates on startup and foreground events
 Updated web resources downloaded when necessary, with user confirmation or silently
 Detection upon startup and foreground
 Dialog for easy user selection
 App download progress bar
Application Center
A cross-platform, private mobile app store:
(Android, iOS, BlackBerry)
 During development for early builds feed-back and reviews from stakeholders
 Production-ready for deployment to employees
 Supports versioning and updates
 Centralizes rating and feed-back
 LDAP integration of users and groups for access lists and app review, management and
installation
 Easy to integrate and simple to run
 Integrates with IBM EndPoint Manager for Mobile Device for production deployment
6
Getting Started with Maximo Anywhere 7.5
Worklight used by Maximo Anywhere
Maximo Anywhere is a Hybrid App using Worklight code, HTML5 and some device functions:
 Html, Javascript,css for common code across platforms which allows faster development
and maintenance
 Android SDK, cordoba plugins where device specific feature needed
 Access to native features: GPS, barcode Scanning through camera, offline maps, email.
(More to come in future releases)
 Disconnected – local data storage based on Worklight Json Store
Connectivity and Data Synchronization
 Communication with Backend – OSLC
– Standards based Integration:
• Standard way to discover services.
• Standard way to query for resources.
• Standard way to represent resources.
– Promotes loosely coupled integration
– Performance, Performance, Performance
 OSLC Generic Adapter
– Methods for querying, updating resources
– Proxy to Maximo OSLC
– Takes care of authentication, etc.
– Json Store for device storage of data
– Supports data encryption
7
Getting Started with Maximo Anywhere 7.5
Maximo Anywhere Components



Maximo Enablement Package
– Maximo/TPAE Integration Framework code for OSLC Provider
– OSLC Object Structures
– Dbc Scripts needed for anywhere Setup on Maximo server
Maximo Anywhere Build Environment
– Includes code and build/deploy scripts
• Platform
• Apps
Work Execution
Work Approval
Worklight Studio and Worklight Server
Environment Descriptions
A typical Maximo environment will have:
 A Maximo administration computer where the application is installed and managed
 A WebSphere application server where the application is deployed
 A database server where the transactional and metadata are stored
The administration computer has the “source” files for Maximo and the tools for managing the
environment. The source files are built into an enterprise archive (EAR) file for deployment to
the WebSphere application server. The WebSphere server provides a web environment where
clients connect to the Maximo Application. The Maximo application connects to the database to
store and retrieve data. This simplified environment to be scaled in many ways but the basics
remain true.
A typical Maximo Anywhere mobile environment will have:
 A Maximo Anywhere administration computer where Worklight/Anywhere is installed
 A WebSphere application server where Worklight (and Anywhere) is deployed
 A database server where Worklight data is stored
The administration computer has the “source” or “build” files for the Worklight and Maximo
Anywhere build environment. The WAR file for Worklight is deployed to the WebSphere
server. The Maximo Anywhere mobile applications are built and deployed to the Worklight
server that has been deployed to WebSphere. The Worklight server has an embedded application
center for distributing and maintaining mobile applications with connected users.
Mobile devices connect to the app center to install and maintain their mobile applications. At
runtime, Maximo Anywhere mobile applications retrieve and send data through the Worklight
server which communicates with the supported base Smarter Infrastructure application using
Worklight Adapter Technology. Note: Worklight Adapter Technology uses OSLC.
8
Getting Started with Maximo Anywhere 7.5
Recommended Deployment Scenarios

–
–
–

–
–
–
–
Development
Anywhere Source, Worklight Studio, Worklight Source on Mobile Admin Computer
Maximo Source on Maximo Admin Computer
WebSphere, Maximo, Worklight Runtime, Maximo Anywhere Runtime on WebSphere
Test/QA/Pre-Prod/Prod
Anywhere Source, Worklight Studio, Worklight Source on Mobile Admin Computer
Maximo Source on Maximo Admin Computer
WebSphere, Maximo on Maximo WebSphere Cluster
Worklight Runtime, Maximo Anywhere Runtime on Worklight WebSphere Cluster
Typical Production Maximo Anywhere Deployment
Product Licensing Metric and Compliance Considerations
The Maximo Anywhere product is licensed by Authorized User. Users must be licensed for the
bundle of mobile applications for which they are accessing. In phase 1, this is pretty simple since
the only bundle available is the Work Management bundle containing the Work Execution and
Approvals apps.
9
Getting Started with Maximo Anywhere 7.5
Use Scenarios
If a user is a mobile user ONLY, then the license to the bundle(s) that they access is all the
license entitlement that they require. If on the other hand, as part of their role, the mobile user
also returns to their desk periodically and accesses Maximo via their desktop computer, then the
user must also have base Maximo product entitlements that correspond to their use of Maximo
(i.e. Express, Limited Use Authorized User, or Authorized User).
License Limitations Pertaining to Worklight
The Maximo Anywhere product has Worklight components embedded within it. Customers are
able to use the Worklight components for the purpose of running the Maximo Anywhere mobile
applications. There are a few situations which will help to understand the boundaries of the
Worklight use.
If a customer accesses another data source besides Maximo (also TRIRIGA and SCCD
starting in the phase 2 Anywhere product), such as ERP, Production system, another Asset
Management system, then the changes to the mobile apps necessitate the need to obtain
full Worklight license coverage.
If a customer creates a brand new mobile application for Maximo (i.e. a mobile version of
a custom application they created within base Maximo), then the changes necessitate the
need to obtain full Worklight license coverage.
If a customer creates a brand new mobile app over and above Maximo (or TRIRIGA or
SCCD) for another enterprise system within their organization (which we expect a large
degree of customers to do) then the creation of the new app necessitates the need to obtain
full Worklight license coverage.
Note: Clones are exempt from this license boundary as long as the business intent of the
original mobile app is not changed (i.e create a contracts app from work execution app)
Recommendations and Best Practices
Device Encryption - Maximo Anywhere 7.5 installs mobile applications on mobile devices
with device level encryption disabled by default. Mobile devices have some level of protection
through password authentication but the data itself is accessible if the device password is
compromised. In addition to authentication protection, some enterprise remote device
management solutions (from your company) may include device level encryption. Maximo
Anywhere does not store large quantities of data on the device in a format that might
compromise the base application. With all this in mind, some enterprises may still require
maximum protection of any data on a mobile device.
If enterprise policy requires maximum security of device data IBM recommends that device level
encryption be enabled. This action will encrypt the JSON stores on the device so that
unauthorized users cannot access the data at any time. Enabling device level encryption means
that JSON stores must be decrypted at user login time. Decrypting may add time to the login
10
Getting Started with Maximo Anywhere 7.5
process. In our tests, login without encryption enabled took under 10 seconds and with
encryption enabled, it took under 30 seconds.
Secure Communication Protocol (SSL) – Standard web communication security protocol
is called Secure Socket Layer (SSL) and is also known as HTTPS. SSL encrypts all data being
sent over a transmission method. In the case of Maximo Anywhere, end users will likely be
communicating with a radio tower wirelessly and the radio tower will communicate over the
internet with the Worklight server. It is possible for unauthorized people to capture unencrypted
data from communication lines.
IBM recommends using SSL for all communications over systems not controlled by your
enterprise. Even with encrypted data on your mobile devices, the communication channel should
also be protected.
Enterprise DMZ – There is nothing in the Maximo Anywhere components that requires the
use of a secure network. Yet for the above considerations, IBM recommends using an HTTP
server outside the enterprise firewall in the DMZ at the entry to the enterprise network. All
Worklight, Maximo Anywhere and base application components should be behind the firewall.
This added level of security along with device encryptions and use of SSL will ensure the most
secure approach to implementing Maximo Anywhere.
Worklight Server Installation – The Worklight server installation is performed on the
WebSphere server where Worklight will be deployed. If you do not already have a WebSphere
environment, you may install the included WebSphere Liberty on a server dedicated for
Worklight. Although it is technically possible to use the same WebSphere Application Server as
the base Smarter Infrastructure application (Maximo in the case of Anywhere 7.5), combinations
can make patching and upgrades more complex. For example, a patch to Maximo may require a
fix to WebSphere that may not be compatible or supported with Worklight.
IBM recommends a separate WebSphere Application Server on a separate Virtual Machine
(VM) or physical server.
Maximo Anywhere Installation – The Worklight Studio, and Maximo Anywhere install
on the same administration computer. This computer is often called the Maximo Anywhere
11
Getting Started with Maximo Anywhere 7.5
development or build computer. Since the Anywhere administration computer is really just
where the source and build files for the application deployment are stored and built, these files
do not need to be on the server where Worklight is running. You can think of the administration
computer as really the Maximo Anywhere development environment where the source files are
modified and built into deployment packages. When it is time to deploy, the Maximo Anywhere
packages will be deployed to the Worklight runtime application.
System Requirements and Supported Configurations
Our tests show that a single Worklight server can support many mobile devices. If high
availability is a factor, at least two Worklight servers should be configured in a cluster and load
balanced so that in the event of a failure, Worklight will continue to be available.
The link below provides the most up to date information for minimum prerequisites and other
specifications. Please review this content in detail.
https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IBM%20Maxim
o%20Asset%20Management/page/Maximo%20Anywhere%20system%20requirements
Installation Procedures
Whether you have an existing Maximo implementation or you are starting a new one, Maximo
Anywhere 7.5 mobile solutions are designed to “plug in” to your system using dedicated
components combined with state of the art Open Service for Lifecycle Collaboration (OSLC)
integration communications.
Before you begin, you should understand the difference between a multi-instance database and a
multi-schema database. A multi-instance database environment is one where a database server is
configured with distinct database instances for connectivity and storage of data. A multi-schema
database environment is one where a single database instance is configured and database objects
12
Getting Started with Maximo Anywhere 7.5
such as tables and indexes are setup under unique users/owners. In multi-schema, there is only
one database but owners within that database have access to different objects.
Out of the box, Worklight expects to be in a multi-instance environment. In cases where multischema is required, please follow the installation procedures closely for your database
environment.
The following sections describe the procedure for installing the Maximo Anywhere software.
Architectural considerations are delineated, so please refer to the section that applies to your
system. The first six steps are common to all architectures.
1) Download the appropriate Packages from Passport Advantage


Maximo Anywhere
Worklight Server
2) Extract the contents of the Maximo Anywhere package into a folder called "Launchpad"
3) Extract the disk1 folder of Worklight Server package into Launchpad\masterSetupDisk
4) Run the Launchpad for your Corresponding Architecture (32 or 64 bit)
5) Click on Install Required Components, point to your Maximo directory and install
Maximo Integration Framework and Maximo Anywhere Enablement and
information center to your current Maximo environment as you would any other Maximo
FP install.
a. IBM recommends that you choose to manually defer the update and deployment
option.
6) Once complete, manually run updatedb from ibm\smp\maximo\tools\maximo folder.
Then rebuild and redeploy the maximo.ear file.
Note: Worklight is shipped with WebSphere Liberty, a lighter version of WebSphere which does
not require configuration for Worklight deployment. The following steps include steps for
configuring the full versions of WebSphere. Those steps are identified by the words “On the
WebSphere Server”.
To use the included WebSphere Liberty product, select “Install WebSphere Application Server
Liberty Profile” from the application server panel. If you are using Liberty, steps identified by
“On the WebSphere Server” can be skipped.
If you are not using the included WebSphere Liberty option, before you begin the Worklight
Server installation, confirm that a WebSphere profile has been setup in your WebSphere
environment for Worklight. See the following link for more information on WebSphere profile
management:
http://pic.dhe.ibm.com/infocenter/wasinfo/v8r5/topic/com.ibm.websphere.base.doc/ae/tpro_
profiles.html
13
Getting Started with Maximo Anywhere 7.5
Worklight Server/DB2/Multi Instance
7) Before beginning the Worklight Install, create the DB2 user that you will use for
Worklight and assign the user to the DB2ADMIN group such as DB2USERS on the
operating system hosting your DB2 database. Note: The DB2 user is created at the
Operating System level. Create an OS user for DB2 to use with the Worklight DB. We
create a user called “wluser” as an example. Replace instances of wluser with the
username you create.
8) Run the following statements to create the required databases and grant permissions to
the Worklight database user you created above.
CREATE DATABASE WORKLIGHTDB COLLATE USING SYSTEM PAGESIZE 32768
CONNECT TO WORKLIGHTDB
GRANT CONNECT ON DATABASE TO USER wluser
DISCONNECT WRKLGHT
CREATE DATABASE WLREPORT COLLATE USING SYSTEM PAGESIZE 32768
CONNECT TO WLREPORT
GRANT CONNECT ON DATABASE TO USER wluser
DISCONNECT WLREPORT
CREATE DATABASE APPCNTR COLLATE USING SYSTEM PAGESIZE 32768
CONNECT TO APPCNTR
GRANT CONNECT ON DATABASE TO USER wluser
DISCONNECT APPCNTR
QUIT
9) Click on the 'Install Maximo Anywhere Work Manager' and check the box beside 'IBM
Worklight Server for Worklight Consumer Edition'
10) Select the Work Light Version 5.0.6 Install Package and click next.
11) Choose your shared install directory path then click next then choose the installation
directory for Worklight, click next again.
12) On the database configuration screen choose IBM DB2 Enterprise Server Edition V9.7
and later.
13) On the setting screen enter the following data and click next three times
Hostname: {host_name} for the db2 server
14
Getting Started with Maximo Anywhere 7.5
Port: port to the db2 server (generally 50000 for windows, 50005 for UNIX platforms)
User name: WLUSER created previously
Password: WLUSER password created previously.
IBM DB2 Driver for JDBC: Download the driver from the link provided on the install
screen, extract the driver, and point this installer field to it.
14) For full WebSphere installs, on the application server choice screen choose 'Use preinstalled application server' then choose 'WebSphere Application Server (Liberty Profile,
7.0,8.0,8.5 Full Profile)' and click next.
15) For full WebSphere installs, select the directory for your WebSphere Application Server
that contains the Worklight Profile (e.g c:\IBM\WebSphere\AppServer.)
16) For full WebSphere installs, choose the Worklight Profile and then Select the Worklight
Server and enter your WASADMIN username and password.
17) For full WebSphere installs, select the Installation Mode, either Single user or Multiple
users. If multiple users select the appropriate OS group and continue until you can click
install.
18) For full WebSphere installs, if prompted for an install package point to your disk1 folder
in Launchpad\masterSetupDisk.
This will install and deploy the Worklight Server to WebSphere Full Profile. You can verify the
appcenterconsole and worklight console are running using the following URL.
http://{yourhostname}:{yourport}/worklight/console
http:// {yourhostname}:{yourport}/appcenterconsole
15
Getting Started with Maximo Anywhere 7.5
Worklight Server/DB2/Multi Schema
7) Before beginning the Worklight Install, create the DB2 user that you will use for
Worklight and assign the user to the DB2ADMIN group such as DB2USERS on the
operating system hosting your DB2 database. Note: The DB2 user is created at the
Operating System level. Create an OS user for DB2 to use with the Worklight DB. We
create a user called “wluser” as an example. Replace instances of wluser with the
username you create.
8) Create your Worklight Database and grant access to the DB User using the DB2
Command Line Processor using the following command:
CREATE DATABASE worklightdb COLLATE USING SYSTEM PAGESIZE 32768
CONNECT TO worklightdb
GRANT CONNECT ON DATABASE TO USER wluser
QUIT
9) Click on the 'Install Maximo Anywhere Work Manager' and check the box beside 'IBM
Worklight Server for Worklight Consumer Edition'
10) Select the Work Light Version 5.0.6 Install Package and click next.
11) Choose your shared install directory path then click next then chose the installation
directory for Worklight, click next again.
12) On the database configuration screen choose 'Install Apache Derby 10.8 Release (not for
production use)
13) Click next until you reach to Application server choice page. Choose Install WebSphere
Application Server Liberty Profile.
16
Getting Started with Maximo Anywhere 7.5
14) Click next until you see Install then click Install. If prompted for a Disk Location point to
the Disk 1 Folder you extracted to Launchpad\masterSetupDisk.
15) Remove the Liberty Profile and Derby Databases after the install is successful by deleting
the c:\ProgramData\IBM\Worklight folder.
16) Create the Worklight Database tables and set their individual Schema's using the
following scripts and pointing to the db creation scripts installed with Worklight
previously
db2 CONNECT TO worklightdb USER wluser USING wluser_password
db2 SET CURRENT SCHEMA = ’WRKSCHM’
db2 -vf worklightserver_home/WorklightServer/databases/create-worklight-db2.sql
-t
db2 CONNECT TO worklightdb USER wluser USING wluser_password
db2 SET CURRENT SCHEMA = ’WLRESCHM’
db2 -vf worklightserver_home/WorklightServer/databases/create-worklightreportsdb2.sql -t
db2 CONNECT TO worklightdb USER wluser USING wluser_password
db2 SET CURRENT SCHEMA = ’APPSCHM’
db2 -vf worklightserver_home/ApplicationCenter/databases/create-appcenterdb2.sql -t
17) Create the WebSphere Data Sources to connect to DB2 in the WebSphere Console.
18) Download the DB2 JDBC Driver JAR files and copy to
{WAS_HOME}/optionalLibraries/IBM/Worklight/5.0.6/db2
19) Expand Resources - > JDBC - > JDBC Providers - > Click on New and provide the
following information
Database Type : DB2
Provider Type: DB2 Universal JDBC Driver Provider
Implementation Type: Connection Pool Data Source
Name : DB2 JDBC Driver
Then click Next -> Finish
20) Expand Resources - > JDBC -> Data Sources - > Click New Data Source
17
Getting Started with Maximo Anywhere 7.5
Data source Name: Worklight Schema
JNDI Name: jdbc/WorklightDS
21) Click “Next” and select the JDBC Provider you created then enter the database
information for your DB2 Worklight
22) On the Setup Security Alias Screen, click on Global J2C authentication alias at the
bottom and enter the information for your Work Light Database User. Once created go
back and under Component-Managed Authentication Alias, choose the Alias you created
the click next and finished.
23) In the Data Source you just created, click on WebSphere Application Server Data Source
Properties and check the "Non-transaction data source" box.
24) Again in the Data Source you just created, click on Custom Properties and select the
property "currentSchema". Set this to the Schema for the Worklight Database
(WRKSCHM)
25) Repeat steps 20 - 24 for the Application Center Schema and the Work Light Reports
Schema using the following information
Data source name : Worklight Reports Database
JNDI name: jdbc/WorklightReportsDS
CurrentSchema: WLRESCHM
----------Data source name: Application Center Database
JNDI name: jdbc/AppCenterDS
Current Schema: APPSCHM
26) Restart the WebSphere services then test the connection on your data sources.
27) Once your data sources have been tested you will need to modifying the
worklight.properties inside the worklight war file. Open the file in a archive tool and edit
the properties file.
28) Rremove the comments on the #wl.db.type and #wl.reports.db.type properties by
removing # and replace with your corresponding database type in this case you would
have:
wl.db.type=DB2
wl.reports.db.type=DB2
29) Comment out the JDBC string as data sources are being used to make the connection by
adding # infront of wl.db.url and wl.reports.db.url so it looks like
#wl.db.url
#wl.reports.db.url
18
Getting Started with Maximo Anywhere 7.5
30) Save the properties file back into the war
31) Manually configure WebSphere for Worklight server and deploy the Worklight war
using the Worklight step by step documentation
http://pic.dhe.ibm.com/infocenter/wrklight/v5r0m6/index.jsp?topic=%2Fcom.ibm.workli
ght.help.doc%2Fadmin%2Fc_manually_configuring_app_server.html
Worklight Server/Oracle/Multi Instance
7) Before beginning the Worklight Install, create 3 databases using the Oracle Database
Configuration Assistant called WRKLGHT, WLREPORT and APPCNTR.
NOTE: Select the following character sets. Unicode (AL32UTF8) character set and
UTF8 - Unicode 3.0 UTF-8 national character set.
8) Run the following statements to create the Worklight user on the databases you created
above and grant the proper permissions.
CONNECT system/<system_password>@WRKLGHT
CREATE USER wluser IDENTIFIED BY wluser;
GRANT CONNECT TO wluser;
GRANT RESOURCE TO wluser;
GRANT CREATE VIEW TO wluser;
DISCONNECT;
CONNECT system/<system_password>@WLREPORT
CREATE USER wluser IDENTIFIED BY wluser;
GRANT CONNECT TO wluser;
GRANT RESOURCE TO wluser;
GRANT CREATE VIEW TO wluser;
DISCONNECT;
CONNECT system/<system_password>@APPCNTR
CREATE USER wluser IDENTIFIED BY wluser;
GRANT CONNECT TO wluser;
GRANT RESOURCE TO wluser;
GRANT CREATE VIEW TO wluser;
DISCONNECT;
9) Click on the 'Install Maximo Anywhere Work Manager' and check the box beside 'IBM
Worklight Server for Worklight Consumer Edition'
10) Select the Work Light Version 5.0.6 Install Package and click next.
11) Choose your shared install directory path then click next then chose the installation
directory for Worklight, click next again.
12) On the database configuration screen choose Oracle 11g Standard/Enterprise Editions
Release 1 and Later
19
Getting Started with Maximo Anywhere 7.5
13) On the setting screen enter the following data and click next three times
Hostname: host name for the oracle server
Port: Port to the Oracle Server (1521)
User name: WLUSER created previously
Password: WLUSER password created previously.
Oracle JDBC Driver: Download the driver from the link provided on the install screen,
extract the driver and point this installer field to it.
14) On the application server choice screen choose 'Use pre-installed application server' then
choose 'WebSphere Application Server (Liberty Profile, 7.0,8.0,8.5 Full Profile)' and
click next.
15) Select the directory for your WebSphere Application Server that contains the Worklight
Profile for example: c:\IBM\WebSphere\AppServer\profiles. Choose the Worklight
Profile and then Select the Worklight Server and enter your WASADMIN username and
password.
20
Getting Started with Maximo Anywhere 7.5
16) Select the Installation Mode, either Single user or Multiple users. If multiple users select
the appropriate OS group and continue until you can click install
17) If prompted for an install package point to your disk1 folder in
Launchpad\masterSetupDisk.
This will install and deploy the Worklight Server to WebSphere Full Profile. You can verify the
appcenterconsole and Worklight console are running using the following URL.
http://{yourhostname}:{yourport}/worklight/console
http:// {yourhostname}:{yourport}/appcenterconsole
Worklight Server/Oracle/Multi Schema
7) Click on the 'Install Maximo Anywhere Work Manager' and check the box beside 'IBM
Worklight Server for Worklight Consumer Edition'
8) Select the Work Light Version 5.0.6 Install Package and click next.|
9) Choose your shared install directory path then click next then chose the installation
directory for Worklight, click next again.
10) On the database configuration screen choose 'Install Apache Derby 10.8 Release (not for
production use)
11) Click next until you reach to Application server choice page. Choose Install WebSphere
Application Server Liberty Profile. Note: Even though you may not be using WebSphere
Liberty, this will streamline the installation process.
12) Click Next until you see Install then click Install. If prompted for a Disk Location point
to the Disk 1 Folder we extracted to Launchpad\masterSetupDisk.
13) If you are not using the WebSphere Liberty installed, remove the Liberty Profile and
Derby Databases after the install is successful by deleting the
c:\ProgramData\IBM\Worklight folder.
14) Create a Worklight database for your Schemas using the Oracle Database Configuration
Assistant.
15) Create 3 separate users for your Schemas on the Worklight Database (WORKLIGHT,
WORKLIGHTREPORTS, APPCENTER) and grant the appropriate permissions.
CONNECT system/system_password@WORKLIGHTDB
CREATE USER wluser IDENTIFIED BY wluser_password;
GRANT CONNECT, RESOURCE, CREATE VIEW TO wluser;
DISCONNECT;
CONNECT system/system_password@WORKLIGHTDB
CREATE USER WORKLIGHTREPORTS IDENTIFIED BY WORKLIGHTREPORTS_password;
GRANT CONNECT, RESOURCE, CREATE VIEW TO WORKLIGHTREPORTS;
21
Getting Started with Maximo Anywhere 7.5
DISCONNECT;
CONNECT system/system_password@WORKLIGHTDB
CREATE USER APPCENTER IDENTIFIED BY APPCENTER_password;
GRANT CONNECT, RESOURCE, CREATE VIEW TO APPCENTER;
DISCONNECT;
16) Create the tables in the Worklight database for each of the schemas, ensure you are
running the scripts on the correct schema's.
CONNECT WORKLIGHT/WORKLIGHT_password@WORKLIGHTDB
@worklightserver_home/WorklightServer/databases/create-worklight-oracle.sql
DISCONNECT;
CONNECT WORKLIGHTREPORTS/WORKLIGHTREPORTS_password@WORKLIGHTDB
@worklightserver_home/WorklightServer/databases/
create-worklightreports-oracle.sql
DISCONNECT;
CONNECT APPCENTER/APPCENTER_password@WORKLIGHTDB
@worklightserver_home/ApplicationCenter/databases/create-appcenter-oracle.sql
DISCONNECT;
17) Download the Oracle JDBC Driver for use with WebSphere Datasources.
18) Log into the WebSphere Console and expand Resources - > JDBC - > JDBC Providers
and click on New and enter the following properties.
Database Type: Oracle
Provider Type: Oracle JDBC Driver
Implementation Type: Connection pool data source
Name: Oracle JDBC Driver
19) Save the Driver, then go back in and specify the path to your Oracle JDBC driver
downloaded earlier.
20) Expand Resources - > JDBC -> Data sources and click on New. Set the JNDI name to
jdbc/WorklightDS provide a description and click next.
21) Choose Select an existing JDBC provider and select the Oracle JDBC Driver you created
earlier from the list.
22) Set the URL to the JDBC path for your Oracle Database
(e.g jdbc:oracle:thin:@{yourserver}:1521:WORKLIGHTDB)
23) On the same data sources create two new custom properties
user: wluser
password: password for wluser user
24) Repeat steps 20 to 23 for the following JNDI, specifying the Worklight database and the
user and password in custom properties for the corresponding schema's
22
Getting Started with Maximo Anywhere 7.5
JNDI name jdbc/WorklightReportsDS.
JNDI name jdbc/AppCenterDS.
25) Once done test your data sources.
26) Once your data sources have been tested you will need to modify the worklight.properties
inside the Worklight war file. Open the file in an archive tool and edit the properties file.
27) Remove the comments on the #wl.db.type and #wl.reports.db.type properties by
removing # and replace with your corresponding database type in this case you would
have.
wl.db.type=Oracle
wl.reports.db.type=Oracle
28) Comment out the JDBC string as data sources are being used to make the connection by
adding # infront of wl.db.url and wl.reports.db.url so it looks like
#wl.db.url
#wl.reports.db.url
29) Save the properties file back into the war
30) Manually configure WebSphere for Worklight server and deploy the Worklight war
using the Worklight step by step documentation
http://pic.dhe.ibm.com/infocenter/wrklight/v5r0m6/index.jsp?topic=%2Fcom.ibm.workli
ght.help.doc%2Fadmin%2Fc_manually_configuring_app_server.html
Maximo Anywhere Install/Deployment
1) Choose IBM Maximo Anywhere from the Installation Manager 'Install Maximo
Anywhere Work Manager' Screen.
2) Complete the license agreements and on the 'Configuration for IBM Maximo Anywhere
screen' enter the following properties. Note: Use lower case for the context root to
simplify the user experience so they will not need to enter upper case characters in the
URL.
Worklight Server
----------------Protocol: http or https
Hostname: Hostname of your Worklight console
Port: Port uses to the access the Worklight console
Context root: worklight
War File: location of your worklight.war file
Application Center
23
Getting Started with Maximo Anywhere 7.5
------------------Url: URL to the application center and port. e.g http://appcenterhost:9081/
Context Root: applicationcenter
Username: Username defined for your app center console
Password: Password defined for your app center console.
Default username/password is appcenteradmin\admin. Password also may have been
provided at the end of the Worklight install.
Maximo Enterprise Application
-----------------------------Protocol: Protocol used to access Maximo http or https
Hostname: Hostname to your Maximo server
Port: port for your Maximo server
Context Root: context for Maximo.
Android Platform
----------------SDK Directory: Location of your android SDK install folder
AP Version: Version of the Android API for example: android-18
3) Continue to finish installing the Maximo Anywhere files.
4) Ensure your build.properties and deploy.properties in the following folder have the
correct properties.
MaximoAnywhere\platform\mobile\config
5) From MaximoAnywhere\platform\mobile run
build all-gen
6) From MaximoAnywhere\platform\mobile run
build all-dist
7) Deploy the worklight.war file created under your
MaximoAnywhere\platform\mobile\target\dist folder to your Worklight Server in
WebSphere using the deployment instructions in the following document.
http://pic.dhe.ibm.com/infocenter/wrklight/v5r0m6/index.jsp?topic=%2Fcom.ibm.workli
ght.help.doc%2Fadmin%2Fc_manually_configuring_app_server.html
8) From MaximoAnywhere\platform\mobile run
build all-deploy
24
Getting Started with Maximo Anywhere 7.5
9) Access your Worklight Console and Application Center Console and ensure the mobile
applications WorkApproval and WorkExecution exist.
10) Download the applications using the IBM Admin Center application to connect to the
App Center Console on the device, or test using Google Chrome and preview common
resources.
Installing and Configuring Work Light Studio
1) Open the Launchpad and choose 'IBM Worklight STudio for Worklight Consumer
Addition'
2) Check the boxes beside version 5.0.6 and choose next.
3) Accept the license agreement and proceed with entering the installation directory. Ensure
32 bit is checked as WLStudio doesn't suppoer 64-bit. Click Next
4) Check the following boxes and click Next
Core Development Tools
-JQuery Mobile Tools
-Dojo Mobile Tools and library
5) Choose the path of your Oracle JRE, (this must be a 32 bit installation of 1.6 Java) and
click next to finish the installation.
6) If you installed WL Studio onto a server with an existing eclipse installation, update the
eclipse.ini using the steps in the following document.
http://pic.dhe.ibm.com/infocenter/wrklight/v5r0m6/index.jsp?topic=%2Fcom.ibm.workli
ght.help.doc%2Fdevenv%2Ft_next_steps.html
7) Launch Worklight Studio from the IBM Software Delivery Folder in your start menu.
8) Create a new Work Space for Worklight
9) Go to Help - > Install New Software
a) In the Work With: field enter https://dl-ssl.google.com/android/eclipse/ and click add
b) Give your repository a name and the location will be pre-populated with the URL you
entered in Work With:
c) Click OK
10) Check the box beside developer tools and click next twice, review the license agreement
and click finish and restart WL Studio
25
Getting Started with Maximo Anywhere 7.5
11) Once you enter the WL Studio again and choose your previous workspace you will be
prompted for your Android SDK location, specify the directory to your Android SDK and
click apply.
12) Right Click in the Project Explorer and Choose Import, expand General and select
"Existing Projects into Workspace". Click Next.
13) Choose Select root directory and point to your MaximoAnywhere folder and click
Finish.
14) From the windows menu tab choose preferences, expand ant and select runtime.
15) Click Ant Home and set it to
c:\ibm\MaximoAnywhere\platform\mobile\releng\tools\ant
16) Open the Ant view by going to the Window tab - > Show View - > Other - > Ant
17) Drag the build.xml from your Project Explorer to the Ant view you previously opened.
18) Confirm your properties files in the project explorer are correct and pointing to localhost
and port 8080 for the build in worklight server then double click on all-gen from the Ant
View
19) Right click and refresh the Project Explorer, once done right click again and choose
Import - > Import - > Import existing projects into workspace then select the following
path and click ok and let the workspace build.
MaximoAnywhere\platform\mobile\target\GEN\PROJ
20) Once your MaximoAnywhere eclipse project shows up, right click on it and choose 'Start
Worklight Server'
21) Expand MaximoAnywhereProject - > Expand adapters - > Right click on
'OSLCGenericAdapter' - > Choose 'Run As' - > 'Deploy Worklight Adapter'
22) Expand MaximoAnywhereProject - > apps - > Right click on ' WorkApproval' -> Choose
'Run As' -> Build All and Deploy
23) Expand MaximoAnywhereProject - > apps - > Right click on ' WorkExecutionl' ->
Choose 'Run As' -> Build All and Deploy
24) Access your applications via http://localhost:8080/console
SSL Configuration
1) Open your browser and navigate to the your Maximo environment using HTTPS. Download
the certificate using your browser to a file (worklight_ssl.cer)
26
Getting Started with Maximo Anywhere 7.5
2) Import the Certificate into the Worklight Default KeyStore (This is done using the keytool
bunbled with Java).
keytool -importcert -file c:\locationto\worklight_ssl.cer -trustcacerts -alias worklight -keystore
defaut.keystore.worklight -storepass worklight
3) Update the worklight.properties to enable the default.keystore
ssl.keystore=conf/default.keystore.worklight
ssl.keystore.type=jks
ssl.keystore.password=worklight
4) Modify the OSLCGenericAdapter.xml and fine the sslCertificateAlias
<connectivity>
<connectionPolicy xsi:type="http:HTTPConnectionPolicyType"
cookiePolicy="IGNORE_COOKIES">
<protocol>${worklight.adapter.protcol}</protocol>
<domain>${worklight.adapter.domain}</domain>
<port>${worklight.adapter.port}</port>
<sslCertificateAlias>worklight</sslCertificateAlias>
</connectionPolicy>
<loadConstraints maxConcurrentConnectionsPerNode="50" />
</connectivity>
5) Modify your deploy.properties so the following properties are changed for https
adapter.connection.protocol=https
adapter.connection.port=9443 ( or corresponding SSL port)
5) Rebuild the Worklight.war be issuing the following commands.
build.cmd all-gen
build.cmd all-dist
6) Redeploy the worklight.war to WebSphere using the following documentation.
http://pic.dhe.ibm.com/infocenter/wrklight/v5r0m6/index.jsp?topic=%2Fcom.ibm.worklight.help
.doc%2Fadmin%2Fc_manually_configuring_app_server.html
7) Deploy the Anywhere application to the Worklight Console and the AppCenter Console by
running
build.cmd all-deploy
Enabling Data Encryption for Maximo Anywhere
To enable data encryption for Maximo Anywhere do the following.
27
Getting Started with Maximo Anywhere 7.5
1) Open up the build.properties from MaximoAnywhere\platform\mobile\config
2) Search for enableDataEncryption and change the value from false to true.
3) Rebuild and Redeploy the Worklight.war.
Post Installation Query Configuration
Once you have completed installation you will need to configure queries to download your work
to the application. To do this you must go to the Work Order Tracking application in order to
create a query for the Work Execution application.
1) Create a public query that will return the data you desire for your technicians in the field.
Once you are satisfied with the query results save the query and make note of the name
you created. Note: It must be a public query.
2) Edit the app.xml file for the work execution application. Navigate to the
{maximoanywhere_home}\MaximoAnywhere\apps\{application_name} directory, on the
Maximo Anywhere admin workstation. Open the app.xml file with the XML editor of
your choice.
3) Add a query to the work list view. The work list view is the first view that is defined in
the UI section of the application definition. Perform the following steps:
a) In the <queries> element for the work list view, add a child element called <query>.
b) Use the queryBase attribute to specify the name of the public query in Maximo Asset
Management. The query name is case sensitive.
c) Use the label attribute to specify the query label that is displayed in the work list
menu.
d) Optional: To define this query as the default query for the work list view, specify the
query label as the value of the label attribute for the parent <view> element.
NOTE: In the following example, we add three queries to the work list view for the Work
Execution app:
<view id="WorkExecution.WorkItemsView" label="Work I Own"
saveonshow="true"
<queries resource="workOrder">
<query label="Work I Own" queryBase name="WorkIOwn">
<query label="Assigned to My Labor" queryBase name = "WorkforMyLabor">
<query label="Work Assigned to My Crew" queryBase name="WorkforMyCrew">
<{Additional XML info is here.}>
</queries>
</view>
28
Getting Started with Maximo Anywhere 7.5
4) Add the query that you specified above to the primary resource. The primary resource is
the first resource that you defined in the data section of the application definition. Follow
these steps:
a) In the queryBases element for the primary resource, add a child element called
queryBase.
b) Use the “name” attribute to specify the name of the public query in Maximo. The
query name is case sensitive.
In this example, we add the same three queries used in the above example, to the primary
resource, workOrder, for the Work Execution app:
<resource providedBy="/oslc/sp/WorkManagement"
describedBy="http://jazz.net/ns/ism/work/smarter_physical_infrastucture#WorkOrder"
name="workOrder" pageSize="100" class="application.business.WorkOrderObject">
<{A whole bunch of attributes appear here}>
<queryBases>
<queryBase name="WorkIOwn">
<queryBase name="WorkforMyLabor">
<queryBase name="WorkforMyCrew">
</queryBases>
<{More XML stuff here}>
</resource>
c) Save the file.
d) Build and deploy the application.
Once you have completed this exercise you will be able to down load work orders to the device
according to the queries you created.
Cautions and Limitations
Maximo Anywhere 7.5 is the initial release of an entirely new architecture around mobile
computing. It is shipped with Worklight Studio to facilitate making small changes to the XML
that controls the Maximo Anywhere applications. While Worklight is a very powerful platform
that can be used to create applications, the license shipped with Maximo Anywhere limits the use
of Worklight Studio and Worklight Server to the Maximo Anywhere applications only. In order
to use Worklight for development of mobile apps an additional license must be obtained from
IBM.
Because this is an initial offering using this new technology, the standards used to ensure
upgradability of applications is still being developed. Any changes to applications will likely
have to be manually migrated to new versions. In addition, changes to the business logic cannot
be supported at this time.
29
Getting Started with Maximo Anywhere 7.5
Troubleshooting
Logging
Installation Manager Logs
The logs produced for error during the Mobile Anywhere install in the Installation Manager are
found at the following path:
\\ProgramData\IBM\Installation Manager\logs
Maximo Anywhere apps Build/Deployment Logs
The logs produced for error during the Maximo Anywhere apps Build/Deploy process are found
at the following path:
\\IBM\MaximoAnywhere\platform\mobile\target
Mobile logging
From the overflow menu on your mobile device select Settinges--> Advanced Settings -->
Logging, On the Logging Data screen from the overflow menu select one of the following: Error,
Info or Debug logging. Return to the worklist and reproduce the issue. Once you have this done,
Go to the Logging Data screen from the overflow menu, and select Email Log. Disable logging
when complete.
Server Logging
WebSphere Full Profile
If using a Full WAS Profile you would find the Server logging in the normal WebSphere logs
location for your Worklight Server.
IBM\WebSphere\AppServer\profiles\WorklightProfiles\logs\WorklightServer\SystemOut.log
IBM\WebSphere\AppServer\profiles\WorklightProfiles\logs\WorklightServer\SystemErr.log
For more information about WebSphere profiles see the following link:
http://pic.dhe.ibm.com/infocenter/wasinfo/v8r5/topic/com.ibm.websphere.base.doc/ae/tpro_profi
les.html
WebSphere Liberty Profile.
The server logs for the WebSphere Liberty Profile Setup are found in the following directory.
\\ProgramData\IBM\Worklight\WAS85liberty-server\wlp\usr\servers\worklightServer\logs
30
Getting Started with Maximo Anywhere 7.5
OSLC logging
From the Goto Menu choose System Configuration - > Platform Configuration - > Logging.
Filter for OSLC and change the logger from ERROR to INFO or DEBUG depending on detail of
logging needed. Ensure an appender is set (Console, Rolling or Custom), then apply the settings
from the Select Actions Menu.
If the Console is set this will write to your Maximo SystemOut Logs in the following directory:
IBM\WebSphere\AppServer\profiles\MaximoProfile\logs\MaximoServer\SystemOut.log
If you are using a different appender then Console it will write to the path setup for your Root
Logging Folder. You can check this from the Select Actions Menu.
Known Problems / Explanations or Solutions
Problem
1. If you happen to see this message when you start up the Worklight Server in Worklight
Studio/JETTY server:
[2013-11-14 13:53:57] Worklight Server started successfully on localhost:8080
[2013-11-14 13:53:57] FWLSE4001W: Failed to resolve JNDI name: "jdbc/WorklightDS".
Application may fail to access the database in run time. If building for remote server
- ignore this warning.
[2013-11-14 13:53:57] FWLST0011E: ====== Worklight Project PROJ-project-customization
failed to start: Need to specify class name in environment or system property, or as
an applet parameter, or in an application resource file: java.naming.factory.initial
[2013-11-14 13:53:57] Activation failed. Bundle didn't
start:C:\Users\IBM_ADMIN\workspace2013JETTY\ReleaseEngineering\ReleaseEngineering\target\GEN\PROJ\bin\PROJ-customization.jar
[2013-11-14 13:53:57] FWLST0012I: ====== Stopped server for project PROJ-projectcustomization
Resolution/Workaround:
1. Copy MaximoAnywhereProject/server/conf/worklight.properties to
MaximoAnywhere/platform/mobile/target/GEN/PROJ/server/conf/worklight.properties
2. Refresh your MaximoAnywhereProject
3. Perform 'Build Project' on MaximoAnywhereProject
4. Perform 'Start Worklight Server' on MaximoAnywhereProject and it should come up.
Reason Why:
If you are running the jetty server, the worklight.properties cannot have any worklight settings. If
you use the build scripts to execute the ‘all-dist’ command, it will update the
worklight.properties with information from the config/worklight.war.
Problem
31
Getting Started with Maximo Anywhere 7.5
2. When trying to launch build.cmd command, the following error is displayed:
"The system cannot find the batch label specified - showJAVAErrorMessage"
Resolution/Workaround:
1. Confirm the JAVA_HOME environment variable is configured
2. Confirm the JAVA_HOME environment variable path does not contain a space.
(e.g. C:\Progra~1\Java\jdk1.6.0_18)
3. When trying to deploy Mobile Anywhere applications (build.cmd all-deploy), the following
error is displayed:
For input string: "9081applicationcenter"
Perhaps the server or context is wrongly specified.
Resolution/Workaround:
1. In deploy.properties, ensure the following entry has the appending backslash (/) at the end:
worklight.appcenter.server.url
i.e. http://hostname:9081/
Problem
4. During the Maximo Anywhere installation, when selecting the Oracle JDK, the following
error is displayed:
"The Oracle JRE bit mode must be the same as the bit mode of the product installation."
Resolution/Workaround:
1. Ensure a 32-bit java/javaw.exe is installed and chosen.
32
Download