Professional Documents
Culture Documents
Primavera P6 Integration API: Administrator's Guide
Primavera P6 Integration API: Administrator's Guide
Integration API
Administrator’s Guide
Version 6.2.1
Copyright © 2003, 2009, Oracle and/or its affiliates. All rights reserved.
The Programs (which include both the software and documentation) contain proprietary information; they are
provided under a license agreement containing restrictions on use and disclosure and are also protected by
copyright, patent, and other intellectual and industrial property laws. Reverse engineering, disassembly, or
decompilation of the Programs, except to the extent required to obtain interoperability with other independently
created software or as specified by law, is prohibited.
The information contained in this document is subject to change without notice. If you find any problems in the
documentation, please report them to us in writing. This document is not warranted to be error-free. Except as
may be expressly permitted in your license agreement for these Programs, no part of these Programs may be
reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose.
If the Programs are delivered to the United States Government or anyone licensing or using the Programs on
behalf of the United States Government, the following notice is applicable:
U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data
delivered to U.S. Government customers are "commercial computer software" or "commercial technical data"
pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As
such, use, duplication, disclosure, modification, and adaptation of the Programs, including documentation and
technical data, shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement,
and, to the extent applicable, the additional rights set forth in FAR 52.227-19, Commercial Computer Software--
Restricted Rights (June 1987). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.
The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently
dangerous applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup, redun-
dancy and other measures to ensure the safe use of such applications if the Programs are used for such purposes,
and we disclaim liability for any damages caused by such use of the Programs.
Oracle, JD Edwards, PeopleSoft, and Siebel are registered trademarks of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.
The Programs may provide links to Web sites and access to content, products, and services from third parties.
Oracle is not responsible for the availability of, or any content provided on, third-party Web sites. You bear all
risks associated with the use of such content. If you choose to purchase any products or services from a third
party, the relationship is directly between you and the third party. Oracle is not responsible for: (a) the quality of
third-party products or services; or (b) fulfilling any of the terms of the agreement with the third party, including
delivery of products or services and warranty obligations related to purchased products or services. Oracle is not
responsible for any loss or damage of any sort that you may incur from dealing with any third party.
Table of Contents
Preface...................................................................................................v
Using this Administrator’s Guide ........................................................................ vi
Where to Get Support .........................................................................................vii
Installing the Integration API.............................................................1
What is the Integration API?................................................................................. 2
System Requirements............................................................................................ 3
Integration API Installation Process ..................................................................... 4
Deploying the Integration API for Remote Mode ................................................ 7
Changing Database Configuration Settings ........................................................ 12
Enabling Access.................................................................................................. 13
Java Security Manager ........................................................................................ 14
Using the Primavera Administrator Application ................................................ 15
Starting the Primavera Administrator Application ............................................. 16
Reviewing and Modifying Integration API Configurations................................ 17
Integration API Configuration Settings .............................................................. 21
Configuring Authentication Modes ..................................................45
Authentication Modes......................................................................................... 46
Implementing Non-Native Authentication.......................................................... 47
Choosing an Authentication Scheme .................................................................. 48
Running the Authentication Configuration Wizard ............................................ 49
Configuring Integration API Authentication ...................................................... 60
Logon/Logout Changes to Support Authentication Modes ................................ 61
Index....................................................................................................63
v
Preface
The Primavera Integration API is a Java-
In this preface: based API and server that enables developers
to create client code that can seamlessly
Using this Administrator’s Guide
access Primavera’s project management
Where to Get Support
functionality.
vi Primavera Integration API
Administator’s Guide
1
System Requirements
The Primavera Integration API has the following system requirements
for both local and remote mode installations:
Operating Systems
For the full list of ■ The Primavera Integration API is fully supported on Windows,
supported operating
systems and database
Solaris, and Linux operating systems.
versions, refer to the
testedcfg.pdf file, which is Even though the JRE and JDK are available on other
provided in the
\Documentation\ operating systems, they have not been tested by Primavera
<language>\Technical Systems.
Documentation folder on
the P6 physical media or
download.
Project Management Database
■ A Primavera P6 project management database (Oracle, SQLServer,
and SQL Server Express are supported)
Application Servers
Remote mode installations of the Primavera Integration API require one
of the following supported application servers:
■ JBoss 4.0.5
■ BEA WebLogic Server 10
■ IBM WebSphere Application Server 6.1
Administrator’s Guide
4 Primavera P6 Integration API
The Integration API Installer provides a wizard to guide you through the
installation process, which includes
Before you start the installation, make sure you set the
JAVA_HOME environment variable.
If you setup the 5 On the Please select the components . . . dialog box, select the
JAVA_HOME environment components to install, then click Next to start the installation.
variable, the location of the
JRE is automatically filled 6 On the dialog box that lists the components and features to be
in for you. installed, click Next to start the installation.
7 On the Setup and Configuration of the Primavera Database
dialog box, specify the database type.
You can later change the 8 On the Please enter the following information . . . dialog box,
database type through the specify the database connection parameters.
Integration API Database
Configuration Setup.
Administrator’s Guide
6 Primavera P6 Integration API
The Integration API requires pubuser access (in the User Name
field) to the database.The database name, host address, and host
port are specific to your Oracle or MS SQL Server installation.
Database Host Port displays the default port for the database type
you selected. You can edit this port.
For more information 9 On the The installer has detected an existing . . . dialog box,
about configurations, see
“Using the Primavera
choose the appropriate action.
Administrator Application”
on page 15. The configuration stores server-side settings for the server.
■ Demo applications
■ Documentation (Java API Documentation, License, Programmer’s
Reference, Release Notes, and Readme)
■ Configuring the database connection
■ Running the Administrator application
■ Starting and stopping the application server (Remote mode
installation only)
■ Uninstall Primavera Integration P6 API
Administrator’s Guide
8 Primavera P6 Integration API
6 In the run.bat file in the bin folder, insert the following line before
the :RESTART line:
@echo off
set JBOSS_HOME=C:\jboss-4.0.5.GA
call %JBOSS_HOME%\bin\run.bat -c primaveraAPI
This bat file is necessary for starting the JBoss application server.
Unix example:
JAVA_OPTIONS="-Dprimavera.bootstrap.home=<Integration API
home>${SAVE_JAVA_OPTIONS}"
Administrator’s Guide
10 Primavera P6 Integration API
9 Click OK. Click the Save link that appears within the message
reporting changes.
10 In the left-hand navigation pane, expand Applications and click
Install New Application.
11 Specify the path to the war file in the apihome folder. For example:
c:\apihome\applications\primaveraapi.war
Administrator’s Guide
12 Primavera P6 Integration API
The database you connect to during the installation stores one or more
Integration API configurations. Each configuration specifies a set of
configurable parameters that determine how the Integration API
operates. The first time you install the Integration API, and if no
configuration exists in the database, you must create a new
configuration. For subsequent installs, you can choose an existing
configuration or create a new one. After installation, you can use the
Database Configuration wizard to select a different Integration API
configuration or create a new one.
Enabling Access
Before users can log in to the API, they must be granted access via a
named license in the Project Management module (select Admin, Users;
click the Licensing tab; mark the box under Named User for Integration
API).
Administrator’s Guide
14 Primavera P6 Integration API
WebLogic 10
Windows:
SET ENABLE_JAVA_SECURITY_MANAGER=-Djava.security.manager
Solaris/Linux:
ENABLE_JAVA_SECURITY_MANAGER=-Djava.security.manager
The API server may use different policy files for different
application/web servers.
Administrator’s Guide
16 Primavera P6 Integration API
Administrator’s Guide
18 Primavera P6 Integration API
You cannot delete the Factory Defaults configuration. You can delete
any custom configuration, but not all of them. There must always be at
least one custom configuration.
For more information, see Database driver configurations The following table lists the
Database.Instance.Driver
and
database drivers the Integration API supports for each application
Database.Instance.URL in server/database configuration. Use the
the “Integration API
Configuration Settings” on
Database.Instance.Driver configuration setting to specify the
page 21. database driver you are using.
Application
Database Type Database Driver Default
Server
Administrator’s Guide
20 Primavera P6 Integration API
■ Authentication.Mode
Because one Integration API server instance may control more than one
database, in addition to specifying an authentication mode for a
database through the Authentication Configuration wizard, you use the
Authentication.Mode configuration setting to specify the overall
mode you want to use for the Integration API server. For LDAP
authentication with secure communication (SSL) between the
Integration API server and the LDAP server, two additional
configuration settings are required.
[Localization Settings]
Localization/System Language en —
Language for server string constants
Localization/System Country US —
Country for server string constants
Administrator’s Guide
22 Primavera P6 Integration API
[Authentication Settings]
[Database Settings]
Database/Instance/Name — up to 32 characters
The name of this database instance.
Database/Instance/Schema PMDB —
The schema that will be defined for the database.
Database/Instance/URL — —
The database URL used to establish a connection to the
database.
Oracle example:
jdbc:oracle:thin:@xx.xxx.xxx.xx:yyyy:zzzz
SQL example:
jdbc:sqlserver://xxxx:yyyy;database=zzzz;
x = IP address or hostname
y = database listen port
z = database name
Database/Instance/Public Group ID 1 —
The public group ID used to establish a connection to the
database.
Database/Instance/User Name pubuser —
The name used to establish a connection to the database.
Database/Instance/Password pubuser —
The password used to establish a connection to the database.
Administrator’s Guide
24 Primavera P6 Integration API
[Database Settings]
[Database Settings]
Administrator’s Guide
26 Primavera P6 Integration API
[Database Settings]
[Database Settings]
Administrator’s Guide
28 Primavera P6 Integration API
[Database Settings]
Database/Instance/Methodology Management/Name — —
Name of this database instance.
Database/Instance/Methodology Management/ — —
Description
Description of this database instance.
Database/Instance/Methodology Management/URL — —
Database URL used to establish a connection to the
database.
Oracle example:
jdbc:oracle:thin:@xx.xxx.xxx.xx:yyyy:zzzz
SQL example:
jdbc:sqlserver://xxxx:yyyy;database=zzzz;
x = IP address or hostname
y = database listen port
z = database name
Database/Instance/Methodology Management/User — —
Name
The name used to establish a connection to the database.
Database/Instance/Methodology Management/Password — —
The password used to establish a connection to the database.
Database/Instance/Methodology Management/ 1 —
Public Group ID
The Group ID used to establish a connection to the database.
[Database Settings]
Administrator’s Guide
30 Primavera P6 Integration API
[Database Settings]
Database/Instance/Content Repository/URL — —
Database URL used to establish a connection to the
database.
Oracle example:
embedded://jdbc:oracle:thin:@xx.xxx.xxx.xx:yyyy:zzzz
SQL example:
embedded://jdbc:sqlserver://xxxx:yyyy;database=zzzz;
x = IP address or hostname
y = database listen port
z = database name
[Database Settings]
Database/Instance/Workflow Repository/URL — —
Database URL used to establish a connection to the
database.
Oracle example:
jdbc:oracle:thin:@xx.xxx.xxx.xx:yyyy:zzzz
SQL example:
jdbc:sqlserver://xxxx:yyyy;database=zzzz;
x = IP address or hostname
y = database listen port
z = database name
Administrator’s Guide
32 Primavera P6 Integration API
[Database Settings]
[Log Settings]
Administrator’s Guide
34 Primavera P6 Integration API
[Log Settings]
JBoss on Windows:
<webaccesshome>\WebAccessLogs
JBoss on Red Hat Enterprise Linux:
/mount_point/<webaccesshome>/AppServer/
WebAccessLogs
WebLogic on Windows:
<webaccesshome>\WebAccessLogs
WebLogic on Solaris:
/mount_point/<webaccesshome>/WebAccessLogs
WebSphere on Windows:
<webaccesshome>\WebAccessLogs
WebSphere on Red Hat Enterprise Linux:
/mount_point/WebSphere/AppServer/WebAccessLogs
[Application Settings]
Application/Prototype User — —
Prototype user login used to create and store default
Dashboards and Global Preference settings for new P6 Web
Access users.
Application/Ignore Daylight Savings Time true true/false
Set to false to account for daylight savings time.
Administrator’s Guide
36 Primavera P6 Integration API
[Application Settings]
Application/Logout URL — —
Directs P6 Web Access to a specific URL when the user exits
with the Logout/Close icon in the banner of P6 Web Access.
Any valid URL can be used. If no URL is specified, P6 Web
Access directs the user to the launch page of P6 Web Access.
Application/Compress Applet Communication true true/false
Set to true to compress communication between applets and
the server.
[Application Settings]
This setting is only valid when using JRE version 1.6.0_10 (or
later).
Administrator’s Guide
38 Primavera P6 Integration API
[Application Settings]
[Services Settings]
[Services Settings]
Administrator’s Guide
40 Primavera P6 Integration API
[Services Settings]
[Services Settings]
Administrator’s Guide
42 Primavera P6 Integration API
[Services Settings]
[Tracer Settings]
Administrator’s Guide
44 Primavera P6 Integration API
Authentication Modes
The Primavera Integration API provides support for the following
authentication modes to validate user logons:
■ Native
Native mode is the original Primavera authentication scheme and is
the default for all applications. When a user attempts to log on to a
Primavera application, native mode confirms the user’s identity in
the project manager or methodology manager database.
■ LDAP (Lightweight Directory Access Protocol)
LDAP mode is available for the Primavera Project Management
client module, P6 Web Access, and the API. In this mode, when a
user attempts to log on to a Primavera application, the user’s
identity is confirmed in a directory server database.
Administrator’s Guide
48 Primavera Integration API
Administrator’s Guide
50 Primavera Integration API
Administrator’s Guide
52 Primavera Integration API
6 On the General tab, specify the LDAP directory server host name or
IP address, listening port, and Base Directory Node.
For Base Directory Node, specify the location in the directory
information tree (DIT) that is the location from which to start the
search for module users during login. Base Directory Node is also
the location where the provisioning function begins the search for
directory server users.
To use SSL protocol for communication with the LDAP server,
mark the Enable SSL checkbox. To use referrals, mark the Chase
Referrals checkbox.
If the LDAP server does not allow anonymous searches, click the
Login tab. Type the user name and password of an LDAP server
user who has search access for the Base Directory Node you
specified on the General tab.
When you are finished configuring the LDAP server, click OK or,
to validate connection with the LDAP server, click Test and click
OK after a successful connection message.
Administrator’s Guide
54 Primavera Integration API
USER_NAME is a required 7 Select an LDAP server. Then, in the LDAP attribute column,
field that must be mapped specify the term/field in the LDAP store that corresponds to the
and can not be deleted. Up Primavera project management/methodology management database
to four fields can be USER_NAME field.
mapped between the
LDAP store and the project Optionally, specify the LDAP term/field for e-mail address, actual
management/methodology name, and office phone number. To add fields, click Add. To
management database. remove a field, select it and click Remove.
If you are unsure of the correct LDAP terms, check with your
LDAP directory server administrator.
Administrator’s Guide
56 Primavera Integration API
Click to
remove the
current
search
results or
currently
selected
users.
After running a search, select the Available For the selected users, click to compare
users you want to add to the Primavera records between the Primavera db and
database, then click the right arrow button. To LDAP store. Status is indicated by
remove a user from the Selected users list, background color. White indicates a
click the left arrow button. Click the double match, blue indicates that the db record
arrows to add or remove all listed users. differs from the record in the LDAP store,
and red indicates that the user record
does not exist in the database.
After provisioning users, 11 When finished importing user information, in the Import LDAP
you will need to set up Users dialog box, click Close. To exit the Authentication
Primavera user accounts Configuration wizard, click Finish.
for the imported users by
assigning security profiles
and licenses through the
Primavera Project
Management Module.
Administrator’s Guide
58 Primavera Integration API
Administrator’s Guide
60 Primavera Integration API
In LDAP mode
■ All Primavera applications require a logon password.
Additionally, because passwords are stored and authenticated
against an LDAP directory, changing a user’s password within a
Primavera application has no effect (i.e., the password is ignored).
In Custom mode
■ Client/server applications require a logon password. Custom mode
is not supported by the Primavera Integration API.
Administrator’s Guide
63
Index
A deploying 7
administrator application 15 installing 1, 4–6
adding Integration API configurations 18 overview 2
reviewing and modifying configurations 17 Integration API configurations
application servers supported 3 add database instances 18
authentication adding 18
login/logout changes 61 database driver configurations 19
custom mode 61 deleting 19
duplicate 18
LDAP mode 61
native mode 61
Authentication modes J
select using LDAP Configuration utility 49 Java JDK 3
authentication modes 46 Java Runtime Environment 3
configuring 45 Java security manager 14
authentication scheme
choosing 48
L
LDAP 49
C provisioning 58
configuration settings 21 LDAP authentication
Customer support vii configure servers 49
provision user information 54, 58
running LDAP utility 49
D
database
managing access to multiple instances 19 N
Database Configuration wizard non-native authentication 47
starting 12
database requirements 3
O
operating systems supported 3
F
Factory Default configuration 17
P
Project Manager database 3
I Provision LDAP user information 54, 58
installation 1
Integration API
authentication 20, 60
64 Index
R
Running Authentication Configuration Wizard 49
S
system requirements 3
T
Technical support vii