p6 Eppm Weblogic Config
p6 Eppm Weblogic Config
p6 Eppm Weblogic Config
Version 18
August 2018
Contents
About This Guide............................................................................................................................... 7
Prerequisites..................................................................................................................................... 7
Deleting Applications and Help from WebLogic ................................................................................... 7
Uninstalling P6 EPPM Applications ....................................................................................................... 8
Uninstalling Previous Versions of P6 .......................................................................................... 9
Installing P6 EPPM Applications .......................................................................................................... 10
Help Directory Installation ................................................................................................................... 10
Configuring WebLogic for P6 EPPM ................................................................................................ 11
Creating a Domain with Servers .......................................................................................................... 11
Creating a Domain for Oracle Web Services Manager Authentication ............................................. 14
Adding Applications and Help to Managed Servers ........................................................................... 16
Setting Arguments ................................................................................................................................ 17
Modifying setDomainEnv for Applications Deployed on Administration Servers ............................. 19
Product-Specific Configurations .......................................................................................................... 21
Finalizing P6 mobile ................................................................................................................... 21
Downloading P6 mobile Apps ............................................................................................ 21
Configuring Login and Authentication Settings to Use P6 for iOS ................................... 21
Configuring Login and Authentication Settings to Use P6 for Android ............................ 22
Finalizing P6 Team Member Web ............................................................................................. 23
Configuring P6 Team Member Web Settings .................................................................... 23
Configuring Email Statusing Service for P6 .............................................................................. 24
Verifying Email Statusing Service ...................................................................................... 29
Deploying P6 EPPM Web Services in WebLogic ....................................................................... 29
Creating an Endorsed Folder ............................................................................................. 29
Adding a JVM Option to the startWeblogic Script ............................................................. 30
Authentication Using Oracle Web Services Manager ....................................................... 30
Prerequisites for Oracle Web Services Manager Authentication ..................................... 31
Enabling Oracle Web Services Manager Authentication Using WebLogic Enterprise Manager
............................................................................................................................................. 31
Enabling Oracle Web Services Manager Authentication for P6 Team Member Using
WebLogic Enterprise Manager .......................................................................................... 32
Installing P6 Integration API ...................................................................................................... 35
Creating a Shared Folder for P6 Integration API and P6 .................................................. 35
Starting and Stopping Servers ........................................................................................................ 37
Starting and Stopping the Domain ...................................................................................................... 37
Starting the Domain ................................................................................................................... 37
Stopping the Domain ................................................................................................................. 37
Starting and Stopping Managed Servers ............................................................................................ 38
Starting a Managed Server ........................................................................................................ 38
3
P6 EPPM WebLogic Configuration Guide for On-Premises
4
Contents
5
About This Guide
Scope
Oracle WebLogic server is an application server you can use to deploy your P6 EPPM
applications. This guide describes how to manage and configure WebLogic settings to optimize
the performance of your P6 EPPM applications:
P6
P6 Team Member
P6 Professional Cloud Connect
P6 EPPM Web Services, and P6 Integration API)
It also describes how to configure eventing for P6.
Audience
System and network administrators should use this guide.
Prerequisites
Deleting Applications and Help from WebLogic
To delete your P6 EPPM and help from WebLogic:
1) Launch the WebLogic Administration Console using the following URL:
http://serverIP:listenport/console
7
P6 EPPM WebLogic Configuration Guide for On-Premises
p6tmhelp.war
prhelp.war
b. Click Stop and then click Force Stop Now.
c. In the Force Stop Application Assistant pane, click Yes.
d. For each application and help, ensure that the State column shows Prepared.
e. Select the applications and help that you stopped.
f. Click Delete.
g. In the Delete Application Assistant pane, click Yes.
Tip: If you plan to use the same home directory for the new help or
tutorial deployments, delete the existing WAR or EAR file from that
directory to avoid conflict with the new files.
cd <Operating System>/Disk1/install
chmod 755 runInstaller
chmod 755 unzip
./runInstaller
8
Prerequisites
Cautions:
Before upgrading P6, you should upgrade the P6 EPPM database to
the current version. See P6 EPPM Upgrade and Configuration Guide
or P6 EPPM Manual Upgrade Guide for your database for details on
how to upgrade your database and for information on potential
impact areas to your environment. For the full list of tested
configurations for P6, go to the
\Documentation\<language>\Tested_Configurations folder of the P6
EPPM physical media or download.
If you are a current Apache JackRabbit user and want to upgrade to the latest version of P6
EPPM, JackRabbit documents data will not migrate automatically. Refer to My Oracle
Support's Knowledge Articles for information on manually migrating JackRabbit documents
to Oracle Universal Content Management. Oracle recommends that you migrate the data
before upgrading.
If you are a current jBPM user and want to upgrade P6 EPPM, workflows and reviews data
will not be available. You should close all workflows and reviews that are in progress before
upgrading. You cannot migrate any of this data to the latest version of P6 EPPM.
Starting with P6 EPPM R8, all recurring job service functions are hosted by P6. Due to this
change, after upgrading to P6 EPPM R8 or later, you must configure Scheduled Services
settings in the Primavera P6 Administrator to use this functionality. Also, if you're upgrading
from version 7.0 or earlier, you must RESUMMARIZE ALL PROJECTS to accurately reflect
your summary data. See the P6 EPPM System Administration Guide for information on
Scheduled Services and configuring separate servers for job services.
Tips
For security reasons, Oracle strongly recommends that on-premises users replace the
default Admin Superuser (admin) immediately after a manual database installation or an
upgrade from P6 version 7.0 and earlier. See information about the Admin Superuser in the
P6 EPPM Application Administration Guide.
P6 EPPM does not support Summary-Only projects. During the P6 EPPM database
upgrade, existing Summary-Only projects convert to standard projects, but lose all summary
data. You can import the summary project from Microsoft Project into the converted blank
project, then summarize the data. See the P6 Professional Help or the P6 Help.
During the upgrade to the latest version of P6 EPPM, some P6 Activity Views settings will
reset. After the upgrade, use the Customize Detail Windows feature to modify the settings
that should appear for each view. See the P6 Help for information on how to edit Activity
Views.
Starting with P6 EPPM R8, P6 saves filter definitions globally. Filters still work for Activity
Views, but all standard filter assignments reset during the upgrade. Due to this change,
views that had Standard Filters applied will show all activities after the upgrade. Reapply
filters after the upgrade finishes. See the P6 Help for information on how to edit Activity
Views.
9
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: You can choose not to use the default help URL, but you will have
to ensure you deploy it in your application server and enter the server
URL into the Primavera P6 Administrator. If any updates are made to the
help, these will not be visible if you are using the p6help.war file.
Note: For the Helps to launch, you must enter the server URLs in the
Primavera P6 Administrator. See the P6 EPPM System Administration
Guide for more information.
Tips
If you receive a "server not found" or a similar error when accessing the help in the application, it
means one of the following:
The application server cannot access the Internet.
The help site is not available.
If the application server cannot access the Internet, check your Primavera P6 Administrator
settings and ensure they are configured to the correct URL.
If the URL is configured correctly, but you still cannot access the application help, you will need
to deploy the help using the WAR file.
10
Configuring WebLogic for P6 EPPM
To create a domain:
11
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: Do not add clusters if you are not using multiple WebLogic server
instances for scalability.
12
Configuring WebLogic for P6 EPPM
11) (Optional) In the Assign Servers to Clusters window, assign a server to a cluster and then
click Next.
Note: Select the Cluster in the right pane, then select the Server in the
left pane. Assign the server to the cluster by clicking the right arrow
button.
12) In the Machines window, select Machine (with Windows) and then complete the following:
a. Click Add.
b. Enter a machine name.
c. (Optional) Select the Node manager listen address from the list.
13
P6 EPPM WebLogic Configuration Guide for On-Premises
h. Click Next.
Notes:
You might want to create machine definitions for the following
situations: (1) The Administration Server uses the machine definition
(along with the Node Manager application) to start remote servers.
(2) WebLogic Server uses configured machine names when
determining the server in a cluster that can handle certain tasks,
such as HTTP session replication. The WebLogic Server then
delegates those tasks to the identified server.
You must configure machines for each product installation that runs a
Node Manager process. The machine configuration must include
values for the listen address and port number parameters.
14) In the Assign Servers to Machines window:
a. In the Machine list, select the machine where you want to assign a WebLogic Server
instance.
b. Assign the managed and administrative servers that you created to the selected machine.
c. Review the machine assignments.
d. Click Next.
15) In the Configuration Summary window, click Create.
If given the option, you can click Done now. Otherwise, continue to the next step.
16) If you are using Windows, in the Creating Domain window:
a. Select Start Admin Server.
b. Click Done.
17) When prompted, enter the administrator user name and password that you entered above.
18) Repeat this procedure for each new domain.
14
Configuring WebLogic for P6 EPPM
15
P6 EPPM WebLogic Configuration Guide for On-Premises
Note:
For the Help to launch, you must enter the server URL in the Primavera
P6 Administrator. See the P6 EPPM System Administration Guide for
more information.
Oracle recommends that you do not deploy the P6 or P6 Team Member
Help because the default URL will take you to the version hosted by
Oracle. The hosted version contains the most up-to-date documentation.
b. Click Next.
5) On the Install Application Assistant page:
a. Select Install this deployment as an application.
b. Click Next.
6) On the Install Application Assistant page:
a. Select the managed server.
b. Click Next.
7) In the Install Application Assistant pane, click Next to accept the default options.
16
Configuring WebLogic for P6 EPPM
8) Review the configuration settings you have chosen and then click Finish to complete the
installation.
9) Repeat this procedure for each application on each domain.
10) In the Change Center pane, click Activate Changes.
Setting Arguments
Use these instructions for each P6 EPPM application that you deploy in a managed or clustered
server. To continue configuring WebLogic for P6, you must add the following arguments to your
managed or clustered server in the WebLogic Administration console.
To set WebLogic Server arguments:
1) In the Change Center pane of the Administration Console, click Lock & Edit.
2) On the Domain Structure pane, expand Environment and then click Servers.
3) In the Summary of Servers page, click the managed server on which you deployed your
application or Help.
4) In Configuration tab, on the Settings for <managed server name> page, navigate to the
Server Start tab.
5) In the Arguments field, enter the following arguments as necessary in the order that they
appear:
-server
-Dprimavera.bootstrap.home=<P6_EPPM_BootStrap_Home>
where <P6_EPPM_BootStrap_Home> is the home directory of BREBootStrap.xml. If
you do not have a BREBootStrap.xml file for your P6 EPPM implementation, you can
create one by creating a P6 EPPM configuration using the Database Configuration
wizard. For more information about using the Database Configuration wizard, see the
P6 EPPM Database Administration Guide.
-Ddatabase.instance=db_id
Include this argument to establish a default database connection for P6 Team Member,
P6 EPPM Web Services, and P6 Integration API if you use more than one database
instance. You do not need to set this argument for P6.
-Dweblogic.webservice.i18n.charset=utf-8
(Optional) Include this argument to allow WebLogic to process UTF-8 characters.
-Djava.awt.headless=true
(With UNIX only) Include this argument if you are deploying P6 EPPM on a non-graphical
UNIX environment. This argument sets the server's JVM to bypass server-side rendering
optimizations. If you do not add the argument, you may not be able to see graphics on
pages and the server logs will report NoClassDefFoundError errors.
-Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFac
tory
(Optional) Include this argument for improved performance when starting the WebLogic
domain.
-XX:MaxPermSize=
17
P6 EPPM WebLogic Configuration Guide for On-Premises
(Optional) Include this argument to set the new generation heap size. The MaxPermSize
setting should be set to at least 256m. You can modify memory settings to maximize
performance.
-XX:NewSize=
(Optional) Include this argument to set the maximum size of the new generation heap
size. As a general rule, set -XX:NewSize to be one-fourth the size of the heap size.
Increase the value of this option for larger numbers of short-lived objects. Be sure to
increase the new generation as you increase the number of processors. Memory
allocation can be parallel, but garbage collection is not parallel.
-XX:MaxNewSize=
(Optional) Include this argument to set the maximum size of the new generation heap
size.
-XX:SurvivorRatio=
(Optional) Include this argument to set new heap size ratios.
The New generation area is divided into three sub-areas: Eden, and two survivor spaces
that are equal in size. Configure the ratio of the Eden/survivor space size. Try setting this
value to 8, and then monitor your garbage collection.
-Xms -Xmx
(Optional) Include this argument to set the initial and maximum heap size.
As a general rule, set the initial heap size (-Xms) equal to the maximum heap size (-Xmx)
to minimize garbage collection.
-XX:+UseParallelGC -XX:+UseParallelOldGC -XX:GCTimeRatio=19
(Optional) Include this argument if you are running Publication Services on a larger
database.
-Xloggc:<Log_Path>
Include this argument to collect garbage logs if you have memory issues on JVM.
For example:
(With Windows)
-server -Dprimavera.bootstrap.home=<P6_EPPM_Home>
-Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory
-XX:MaxPermSize=256m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:SurvivorRatio=8
-Xms2048m -Xmx2048m -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:GCTimeRatio=19
-Xloggc:<Log_Path>
(With UNIX)
Note: If you use additional arguments that are not listed here, be sure to list them in the
correct sequence for your environment.
18
Configuring WebLogic for P6 EPPM
6) Click Save.
7) Add arguments to the managed servers on which applications or Help are deployed.
8) In the Change Center pane, click Activate Changes.
9) Restart your managed servers.
19
P6 EPPM WebLogic Configuration Guide for On-Premises
-XX:NewSize=
(Optional) Include this argument to set the maximum size of the new generation heap
size. As a general rule, set -XX:NewSize to be one-fourth the size of the heap size.
Increase the value of this option for larger numbers of short-lived objects. Be sure to
increase the new generation as you increase the number of processors. Memory
allocation can be parallel, but garbage collection is not parallel.
-XX:MaxNewSize=
(Optional) Include this argument to set the maximum size of the new generation heap
size.
-XX:SurvivorRatio=
(Optional) Include this argument to set new heap size ratios.
The New generation area is divided into three sub-areas: Eden, and two survivor spaces
that are equal in size. Configure the ratio of the Eden/survivor space size. Try setting this
value to 8, and then monitor your garbage collection.
-Xms -Xmx
(Optional) Include this argument to set the initial and maximum heap size.
As a general rule, set the initial heap size (-Xms) equal to the maximum heap size (-Xmx)
to minimize garbage collection.
-XX:+UseParallelGC -XX:+UseParallelOldGC -XX:GCTimeRatio=19
(Optional) Include this argument if you are running Publication Services on a larger
database.
-Xloggc:<Log_Path>
Include this argument to collect garbage logs if you have memory issues on JVM.
For example:
(With Windows)
-server -Dprimavera.bootstrap.home=<P6_EPPM_Home>
-Djavax.xml.stream.XMLInputFactory=com.ctc.wstx.stax.WstxInputFactory
-XX:MaxPermSize=256m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:SurvivorRatio=8
-Xms2048m -Xmx2048m -XX:+UseParallelGC -XX:+UseParallelOldGC -XX:GCTimeRatio=19
-Xloggc:<Log_Path>
(With UNIX)
Note: If you use additional arguments that are not listed here, be sure to list them in the
correct sequence for your environment.
4) Save and Close the file.
5) Restart the admin server.
20
Configuring WebLogic for P6 EPPM
Product-Specific Configurations
Finalizing P6 mobile
Use the steps in the related topics to begin using P6 mobile.
Note: You may need to activate your device's VPN feature to access
your company's deployment of P6. Contact your administrator for more
information.
Note: You will need to specify the server name and port number in the
URL.
b. Tap Authenticate.
c. Enter your SSO username and password.
4) If you turn SSO off:
a. Tap the URL field and enter the URL to your server (for example,
https://server:port/p6tmws).
b. Enter your P6 username.
21
P6 EPPM WebLogic Configuration Guide for On-Premises
Notes:
You will need to configure Email Statusing Service separately. See
the P6 EPPM System Administration Guide.
P6 for iOS supports SSL (https) or HTTP only when it has a certificate
signed by a trusted authority.
P6 for Android requires SSL (https) when you are not using SSO
authentication. If you are using SSO authentication, you can use
HTTP or HTTPs protocols. HTTPS requires a valid certificate from an
Android trusted certifying authority.
Tips
To access server information in the app—which includes the SSO setting, the URL to access
the server, and your user name—navigate to the app menu, and then tap Settings.
For more information on the different types of authentication modes (Single Sign-On, Native,
or LDAP), see "Authentication Modes in P6 EPPM" in the P6 EPPM System Administration
Guide.
You can modify the settings for the app from the Settings page on your iPhone. See the P6
Team Member User's Guide for more information.
Note: You may need to activate your device's VPN feature to access
your company's deployment of P6. Contact your administrator for more
information.
P6 for Android only accepts SSL certificates from a certifying authority
and must use an HTTPS connection.
22
Configuring WebLogic for P6 EPPM
a. Tap the URL field and enter the URL to your server (for example,
http://server:port/p6tmws).
Note: You will need to specify the server name and port number in the
URL.
b. Tap Authenticate.
c. Enter your SSO username and password.
4) If you turn SSO off:
a. Tap the URL field and enter the URL to your server (for example,
https://server:port/p6tmws).
b. Enter your P6 username.
c. Enter your P6 password.
d. Tap Sign In.
Notes:
You will need to configure Email Statusing Service separately. See
the P6 EPPM System Administration Guide.
P6 for iOS supports SSL (https) or HTTP only when it has a certificate
signed by a trusted authority.
P6 for Android requires SSL (https) when you are not using SSO
authentication. If you are using SSO authentication, you can use
HTTP or HTTPs protocols. HTTPS requires a valid certificate from an
Android trusted certifying authority.
Tips
To access server information in the app—which includes the SSO setting, the URL to access
the server, and your user name—navigate to the app menu, and then tap Settings.
For more information on the different types of authentication modes (Single Sign-On, Native,
or LDAP), see "Authentication Modes in P6 EPPM" in the P6 EPPM System Administration
Guide.
You can modify the settings for the app from the Settings button in the app. See the P6
Team Member User's Guide for more information.
23
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: Oracle recommends that you use the second URL option because
it ensures that you always access the latest version of the P6 Team
Member Help, including critical corrections and enhancements.
Note: When you are finished editing the config.properties file, move it to
a secure location.
24
Configuring WebLogic for P6 EPPM
b. In the p6.notify.user = line, specify the email addresses, separated by commas, of users
who can send Notify Task lists to other users. As you see the P6 Help for more
information on sending team members their tasks.
c. In the p6.max.tmusers = line, specify the maximum number of email recipients that can
receive notification emails at one time. You should keep the number below 500 to avoid
performance problems.
d. In the p6.bootstrap = line, specify the location of the BREBootstrap.xml file.
For example, the location could be one of the following: C:/P6EPPM_1/p6,
C:/EMAIL_HOME, /usr/P6EPPM_1/p6, or /usr/EMAIL_HOME or you can use the
following: C:\\P6EPPM_1\p6, C:\\EMAIL_HOME.
e. In the mail.read.schedule = line, specify how often your email should process new
messages. Use cron expressions for your formatting. For example:
0 */5 * * * ?
will process new messages every five minutes.
5) In the Outgoing mail (SMTP Settings) section, locate and specify the following:
a. In the send.host = line, specify the SMTP server hostname or IP address that you will
use to send emails.
b. In the send.port = line, specify the port number that connects to the SMTP server.
c. In the send.ssl = line, specify true to use SSL or false if you will not use SSL.
d. In the send.starttls = line, specify true to use TLS or false if you will not use TLS.
e. In the send.email = line, specify the email address or User Principal Name (UPN) where
team members will send their status update requests.
f. In the send.replyto = line, specify an email address for team members to respond to
when they receive emails. If this field is left blank, the reply address will be the
send.email address you specified above.
g. In the send.password = line, specify the password for the email address or UPN you just
specified.
Notes:
If you do not specify a password now, the email application prompts
you to specify one when it runs.
You can also specify a password by running the following parameter
when you run the 'run.bat' or 'run.sh' file:
-Dsend.password=YOUR_PASSWORD
where Your_Password is the password for your status email
address.
For example:
25
P6 EPPM WebLogic Configuration Guide for On-Premises
d. In the imap.username = line, specify the IMAP user name (which will be your email
address) or User Principal Name (UPN).
e. In the imap.password = line, specify the password for the user name you just specified.
Notes:
If you do not specify a password now, the email application will ask
you to specify one when it runs.
You can also specify a password by running the following parameter
when you run the 'run.bat' or 'run.sh' file:
-Dimap.password=YOUR_PASSWORD
where Your_Password is the password for your status email
address.
For example:
In Windows: ./run.bat -Dimap.password=YOUR_PASSWORD
In UNIX: ./run.sh -Dimap.password=YOUR_PASSWORD
Oracle recommends using the option in the config.properties file
and then moving that file to a secure location when you are finished
modifying it.
If you want to setup anonymous authentication for an SMTP server,
comment this field out.
f. In the imap.search.folder = line, specify the folder to use for processing incoming
emails. For example:
imap.search.folder = inbox
Note: The email application will use this folder to search for incoming
mail. Oracle recommends you use the inbox for this folder. If you select
another folder, you must ensure that all emails get filtered there, or the
email application will not be able to detect the messages.
7) In the IMAP Folder configuration section, locate and specify the following:
26
Configuring WebLogic for P6 EPPM
a. In the imap.success.folder = line, specify the folder where messages that process
successfully will go. For example:
imap.success.folder = P6Success
Note: The email application will automatically create this folder if you do
not create it now.
b. In the imap.failure.folder = line, specify the folder where messages that failed will go.
For example:
imap.failure.folder = P6Fail
Note: The email application will automatically create this folder if you do
not create it now.
c. In the imap.temp.folder = line, specify the folder where messages that are being
processed will go. For example:
imap.temp.folder = P6Temp
Note: The email application will automatically create this folder if you do
not create it now.
8) In the Task update options section, locate and specify the following:
a. In the reply.label.cleanup field, enter true if you want to remove HTML tags attached to
the task field labels. Enter false if you don't want to remove the tags.
b. In the reply.label.tag.search field, enter the regular expression to remove unexpected
HTML tags during reply message parsing.
c. In the update.debug field, enter true if you want to output the contents of the email
message as it is parsed for updates. Enter false if you don't want to output the contents of
the email message as it is parsed for updates. You should only enter true when you are
troubleshooting issues with updating tasks.
9) In the Message Format options section, locate and specify the following:
a. In the update.task.search.term = line, specify the text that the email application should
search for in the subject line of incoming messages. For example:
update.task.search.term = Your Requested P6 Tasks
b. In the notify.update.task.search.term = line, specify the text that the email application
should search for in the subject line of incoming messages that originated from a Notify
message. For example:
update.task.search.term = Your P6 Tasks
10) If the EMAIL_HOME is on a different server from your P6 home, copy the BREBootstrap.xml
from your P6 home to your EMAIL_HOME.
27
P6 EPPM WebLogic Configuration Guide for On-Premises
If the EMAIL_HOME is on the same server as your P6 home, you will use the
BREBootstrap.xml that is in your P6 home folder.
11) Run one of the following:
In Windows, launch the run.bat file.
In UNIX, launch the run.sh file.
When you launch the run file, you may have to complete the following steps depending on
how you configured your Email Statusing Service:
a. If the config.properties file and the run file are in different folders, you will need to specify
the config.properties location with the -Dconfig.file parameter.
In Windows (add a space between run.bat and -Dconfig):
run.bat
-Dconfig.file=C:\home\auser\somelocation\config.properties
In UNIX (add a space between run.sh and -Dconfig):
./run.sh
-Dconfig.file=/home/auser/somelocation/config.properties
b. If you didn't specify the send.password= or imap.password=, you can specify them
now. If you do not specify them now, the email application will prompt you to do so when
it runs.
In Windows:
run.bat -Dsend.password=YOUR_PASSWORD
In UNIX:
./run.sh -Dsend.password=YOUR_PASSWORD
In Windows:
run.bat -Dimap.password=YOUR_PASSWORD
In UNIX:
./run.sh -Dimap.password=YOUR_PASSWORD
where Your_Password is the password for your status email address
c. If your bootstrap file contains more than one database, you need to clarify which
database you are using when you launch the run file.
In Windows:
run.bat -Ddatabase.instance=db_id
where db_id is your database instance (for example, -Ddatabase.instance=2).
In UNIX:
./run.sh -Ddatabase.instance=db_id
where db_id is your database instance (for example, -Ddatabase.instance=2).
Once the run file finishes, you can verify that the email status application works. See Verifying
Email Statusing Service (on page 29).
28
Configuring WebLogic for P6 EPPM
Notes:
Consult WebLogic's documentation for additional methods of
deploying a Web application, such as using a Managed Server or
Clustering.
P6 EPPM Web Services supports the HTTPS communication
protocol. See the application server documentation for instructions
on configuring HTTPS on your application server.
29
P6 EPPM WebLogic Configuration Guide for On-Premises
30
Configuring WebLogic for P6 EPPM
Note: The name of the tab reflects the name of the security realm that
you selected.
f. In the Users toolbar, click New and then complete the following:
In the Name field, enter a name for the user.
In the Password field, enter a password for the user.
In the Confirm Password field, re-enter the password from the previous field.
Click OK.
Note: The user added in security realms should also exist in the P6
EPPM database.
31
P6 EPPM WebLogic Configuration Guide for On-Premises
b. On the Create Policy Set: Enter Resource Scope page, complete the following:
In the Domain Name field, enter the name of the domain on which
<0P_ProdName_P6_WS is deployed.
In the Application Module Name or Connection Name field, enter p6ws.war.
a. On the Edit Policy Set: Add Policy References page, attach an OWSM policy to the
Policy Set.
Note: For detailed instructions on how to create a WSM Policy Set, refer
to the instructions in Using Fusion Middleware Control section under
Creating a Policy Set in the Fusion Middleware Security and
Administrator's Guide for Web Services guide.
Note: For detailed instructions on how to create a WSM Policy Set, refer
to the instructions in Using Fusion Middleware Control section under
Creating a Policy Set in the Fusion Middleware Security and
32
Configuring WebLogic for P6 EPPM
Note: The name of the tab reflects the name of the security realm that
you selected.
7) Restart WebLogic and ensure that you can see the LDAP users in Users and Groups.
Note: The user added in security realms should also exist in the P6
EPPM database.
33
Installing P6 Integration API
This chapter describes how to install the P6 Integration API.
In This Section
Creating a Shared Folder for P6 Integration API and P6 ......................................... 35
Note: If you are using Windows, the drive letter that you use for the
mapping must be the same across all servers.
2) Create a directory on the mount or drive on which temporary files can be created (for
example, /P6EPPM/Temp).
3) Log in to Primavera P6 Administrator.
4) Expand Services and then click Job Service Shared File Location.
5) In the Job Service Shared File Location field, enter the location of the shared directory.
6) Click Save Changes.
35
P6 EPPM WebLogic Configuration Guide for On-Premises
7) Restart the application servers that are associated with the changes.
36
Starting and Stopping Servers
This section describes how to start and stop server instances in WebLogic Server. The method
you choose depends on whether you prefer using the WebLogic Server Administration Console
or a command line, and on whether you are using Node Manager to manage the server's life
cycle.
In This Section
Starting and Stopping the Domain ........................................................................... 37
Starting and Stopping Managed Servers ................................................................. 38
Configuring the Node Manager to Start and Stop Servers ....................................... 41
37
P6 EPPM WebLogic Configuration Guide for On-Premises
Where:
<WebLogic_Home> is the WebLogic home directory. The default is
Oracle/Middleware/Oracle_Home.
<P6_EPPM_Domain> is the WebLogic domain for P6 EPPM that was
set during configuration.
2) Run stopWeblogic.sh.
3) If prompted for a user name and password in the WebLogic console window, enter the
administrative user name and password you specified when creating the domain.
Note: You can use different ways to start the managed servers, but you
must ensure that the managed servers recognize the arguments
required for your application (for example, the argument for where the
bootstrap is located) and how the application environment will start.
<weblogic_home>\server\bin\startNodeManager.cmd
<weblogic_home>\server\bin\startNodeManager.sh
Note: You can open the Administration Console via a web browser at
http://<serverIP>:<listenport>/console. The default
38
Starting and Stopping Servers
<listenport> is 7001.
3) In the Welcome window, log in using the user name and password that you created when
you created your WebLogic domain.
4) On the Change Center pane of the Administration Console, click Lock & Edit.
5) In the Domain Structure pane:
a. Expand Environment.
b. Click Servers.
6) In the Summary of Servers pane:
a. Select the Control tab.
b. Select the option for your managed server.
c. Click Start.
7) In the Server Life Cycle Assistant pane, click Yes.
8) In the Summary of Servers pane, click the 'Start Refresh' icon in the middle of the pane to
see when the State column says 'RUNNING.'
39
Configuring the Node Manager to Start and Stop Servers
Node Manager is a Java utility that runs as a separate process from WebLogic Server and
allows you to perform common operations for a managed server regardless of its location to the
Administration Server. The WebLogic Scripting Tool (WLST) is a command-line scripting
interface that system administrators use to monitor and manage WebLogic Server instances and
domains.
Using the node manager and WLST is optional, but it provides benefits if your WebLogic Server
environment hosts applications with high availability requirements. If you run the node manager
on a machine that hosts managed servers, you can start and stop the managed servers
remotely using the WebLogic Console or from the command line using WLST as a node
manager client. Using the node manager and WLST to control a WebLogic domain will ensure
you do not need to manually modify the domain file to pass customized application java
parameters, which eliminates the risk of distorting the files.
Oracle recommends controlling a WebLogic Domain through the node manager for the P6
EPPM WebLogic domain, instead of using individual Windows services per administration and
managed server.
Follow the steps in the following sections to control a WebLogic domain with the node manager.
If you intend to control the node manager with Windows, refer to Using the WebLogic
Scripting Tool on Windows (on page 41). If you intend to control the node manager with Linux
or UNIX, refer to Using the WebLogic Scripting Tool on Linux or UNIX (on page 50).
For more information on the node manager and WLST, refer to the Oracle WebLogic server
documentation.
In This Section
Using the WebLogic Scripting Tool on Windows...................................................... 41
Using the WebLogic Scripting Tool on Linux or UNIX .............................................. 50
41
P6 EPPM WebLogic Configuration Guide for On-Premises
d. Comment out the lines by adding @rem to the beginning of the lines. For example:
@rem set NODEMGR_HOST=localhost
@rem set NODEMGR_PORT=5556
e. Save the changes, and then close the file.
f. Browse to <WebLogic_domain_home>\bin.
g. Open installNodeMgrSvc.cmd in a text editor.
h. Locate the following lines in the file:
set NODEMGR_HOST=localhost
set NODEMGR_PORT=5556
i. Comment out the lines by adding @rem to the beginning of the lines. For example:
@rem set NODEMGR_HOST=localhost
@rem set NODEMGR_PORT=5556
j. Save the changes, and then close the file.
3) Open the command window, and then complete the following steps:
a. Change the directory to <WebLogic_domain_home>\bin.
b. Enter the following command:
installNodeMgrSvc.cmd
4) Close the command window.
5) Browse to Windows Services, and then start the Oracle WebLogic <domain_name>
NodeManager service.
42
Starting and Stopping Servers
Starting an Administration and Managed Servers Using WLST With Node Manager
To automate the startup of the Admin and managed server using WLST:
Note: If you are using P6 EPPM R8.2 or higher and you used the P6
EPPM Configuration Wizard to create the WebLogic domain, steps 1-6
below have already been completed.
Note: Confirm that the following two files were created under the
p6home/scripts directory: primaveraConfig.secure and
43
P6 EPPM WebLogic Configuration Guide for On-Premises
i.
Stop the WebLogic Domain’s administration server from running by launching
weblogic_home\user_projects\domains\your_domain\bin\stopWebLogic.cmd.
2) Ensure that AdminServer is assigned to the machine created for the WebLogic Domain:
a. Browse to the weblogic_home\user_projects\domains\your_domain\config directory.
b. Make a copy of the config.xml file to back up the existing file.
c. Open the config.xml file with a text editor.
d. Search for the following:
<name>AdminServer</name>
e. Locate the </ssl> element and add the following line under the element:
<machine><!--NameOfMachine--></machine>
where <!--NameOfMachine--> is the name of the logical machine created for the
WebLogic domain.
Notes:
If an </ssl> element does not exist, locate and add the line
<machine><!--NameOfMachine--></machine> above the
<listen-address> element.
If a <machine> element already exists for AdminServer, this step can
be skipped.
f. Save and close the config.xml file.
3) Ensure the administration server and managed servers in the weblogic domain are
configured with a boot.properties file for node manager startup:
a. Browse to the
weblogic_home\user_projects\domains\your_domain\servers\AdminServer\data
directory.
b. Check if you have a directory called nodemanager. If you do not, create a directory
called nodemanager.
c. Create a text file in the nodemanager directory called boot.properties.
d. Open boot.properties using a text editor and add:
usename=<werblogic>
where <weblogic> is the Administrator user created for the WebLogic domain.
password=<password>
where <password> is the password for the Administrator user created for the
WebLogic domain
e. Save and close the file.
f. Repeat steps a – e for every managed server in the domain.
Example path:
weblogic_home\user_projects\domains\your_domain\servers\<NameOfManagedServer>\
data
44
Starting and Stopping Servers
4) Create a text file in the p6home/scripts directory called start_primavera.py (this is also
known as a python file).
5) Open start_primavera.py using a text editor and add the following 6 lines (each line should
be entered as a single line):
nmConnect(userConfigFile='p6home/scripts/primaveraConfig.secure',use
rKeyFile='p6home/scripts/primaveraKeyfile.secure',host='NodeMangerHos
t',port='5556',domainName='Mydomain',domainDir='DomainLocation',nmType=
'ssl')
arg = "Arguments=\" -server -Xms128m -Xmx512m -XX:MaxPermSize=256m \""
prps = makePropertiesObject (arg)
nmStart('AdminServer',props=prps)
connect(userConfigFile='p6home/scripts/primaveraConfig.secure',userK
eyFile='p6home/scripts/primaveraKeyfile.secure',url='t3://Adminserverh
ost:Adminserverport')
start('myManagedServer')
where:
p6home is the home directory for one of the P6 EPPM applications. For example:
C:/p6home
NodeManagerHost is the hostname where the node manager is installed
Adminserverhost is the hostname where the administration server is running
Adminserverport is the port number of the administration server (default is 7001)
Mydomain is the name of the WebLogic domain
DomainLocation is the path to the WebLogic domain
(C:/Oracle/Middleware/user_projects/domains/your_domain)
AdminServer is the Logical Name of the administration server
myManagedServer is the Logical Name of the managed server
45
P6 EPPM WebLogic Configuration Guide for On-Premises
where:
weblogic_home is the WebLogic Server home directory. The default is
C:\Oracle\Middleware
your_domain is the domain name directory in your environment
java_home is the path to the JDK installed and being used by WebLogic
p6home is the home directory for the P6 EPPM folder containing the scripts
directory. For example: C:\p6home
b. Save the file in the p6home\scripts directory with the following name:
start_primavera.bat.
46
Starting and Stopping Servers
Notes:
Each Java process that loads should run under the SYSTEM account.
Later, if the start_primavera.bat file is not executed automatically
through the scheduled task, you can execute it directly or run it
manually using the Windows Task Scheduler.
Note: You must indent the commands under "try" and "except".
47
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: You must indent the commands under "try" and "except".
try:
print('PRM-Shutting down managed server myManagedServer')
shutdown('myManagedServer','Server','true',100,'true')
except:
print('PRM-Failed to stop managed server myManagedServer')
4) Save and close the file.
5) Browse to <P6_EPPM_Home>\scripts and then create a text file called
stop_primavera.bat.
6) Edit stop_primavera.bat and then add the following lines:
SETLOCAL
SET CLASSPATH=
call
weblogic_home\user_projects\domains\your_domain\bin\setDomainEnv.c
md
call java_home\bin\java.exe weblogic.WLST
p6home\scripts\stop_primavera.py
where:
weblogic_home is the WebLogic Server home directory. The default is
C:\Oracle\Middleware
your_domain is the domain name directory in your environment
java_home is the path to the JDK installed and being used by WebLogic
p6home is the home directory for the P6 EPPM folder containing the scripts
directory. For example: C:\p6home
48
Starting and Stopping Servers
Troubleshooting
To troubleshoot the following start_primavera.bat error:
WLSTException: Error occured while performing nmConnect : Cannot connect to Node
Manager. : Access to domain '<domainName>' for user ‘<username>' denied.
1) Ensure that the userConfigFile and userKeyFile variables entered in the
start_primavera.py file point to a valid path and file name for the primaveraConfig.secure
and primaveraKeyfile.secure files.
2) Ensure that the node manager username and password are correct:
a. Start the AdminServer for the WebLogic Domain.
b. Launch the WebLogic Administrative Console.
c. In the Change Center pane of the Administration Console, click Lock & Edit.
d. Under the Domain Structure pane, select the link for your domain name.
e. Select the Security tab and then select the Advanced Options link.
f. Enter the valid credentials in the console for NodeManager username and NodeManager
password.
g. Activate the changes.
h. Logout of the WebLogic Administrative Console.
i. Stop the AdminServer for the WebLogic Domain.
j. Retry executing the start_primavera.bat file.
For the following error, the managed server did not start using the Node Manager and you need
to create a startup.properties file before you can start the managed server using WLST
Scripting.
weblogic.management.ManagementException: Booting as administration server, but
servername, <ManagedServerName>, does not match the administration server name,
AdminServer.
To create a startup.properties file:
1) Start the AdminServer for the WebLogic Domain.
2) Launch the WebLogic Administrative Console.
3) Under the Domain Structure pane, select 'servers' link.
4) On the Servers page, select the Control tab.
5) Select Startup.
6) Once the server is in a running state, on the Servers page, select the Control tab.
7) Select Shutdown.
49
P6 EPPM WebLogic Configuration Guide for On-Premises
Where:
<WebLogic_Home> is the WebLogic home directory. The default is
Oracle/Middleware/Oracle_Home.
<P6_EPPM_Domain> is the WebLogic domain for P6 EPPM that was
set during configuration.
2) Browse to the P6 home directory and create a new directory called scripts.
3) Open the terminal console and run the following commands:
cd <WebLogic_Home>/user_projects/domains/<P6_EPPM_Domain>/bin
source setDomainEnv.sh
<Java_Home>/bin/java.exe weblogic.WLST
50
Starting and Stopping Servers
Where:
<WebLogic_Username> is the name of the WebLogic administrator
user for the domain.
<WebLogic_Password> is the password for the weblogic
administrator.
<Admin_Server_Hostname> is the hostname where the
administration server was installed.
<Admin_Server_Port> is the port number of administration server.
5) At the wls:/mydomain/serverConfig> prompt, enter the following command:
storeUserConfig('<P6_EPPM_Home>/scripts/primaveraConfig.secure',
'<P6_EPPM_Home>/scripts/primaveraKeyfile.secure')
51
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: If an </ssl> element does not exist, locate and add the line
<machine><Machine_Name></machine> above the <listen-address>
element.
Where: <!--Machine_Name--> is the logical name of the machine
created for the WebLogic domain.
Notes:
<WebLogic_Username> is the name of the WebLogic administrator
for the domain.
<WebLogic_Password> is the password for the weblogic
administrator.
5) Save and close the file.
6) Repeat this procedure for the administration server and every managed server at
<WebLogic_Home>\user_projects\domains\<P6_EPPM_Domain>\servers\.
52
Starting and Stopping Servers
Where:
<P6_EPPM_Home> is the P6 EPPM home directory that was set
during installation.
<Node_Manager_Hostname> is the name of the host where the Node
Manager is running.
<Admin_Server_Hostname> is the name of the host where the
administration server was installed.
<Admin_Server_Port> is the port number of administration server.
The default is 7001.
<P6_EPPM_Domain> is the WebLogic domain for P6 EPPM that was
set during configuration.
<Domain_Path> is the full path to the P6 EPPM domain. For
example,
<WebLogic_Home>\user_projects\domains\<P6_EPPM_Doma
in>
<Managed_Server_Name> is the logical name of the managed
server. The default managed server names for P6 EPPM are P6,
P6IntegrationAPI, p6procloudconnect, P6WebServices, and
TeamMember.
3) Save and close the file.
53
P6 EPPM WebLogic Configuration Guide for On-Premises
export CLASSPATH=
<weblogic_home>/wlserver/server/bin/setWLSEnv.sh
<Java_Home>/bin/java weblogic.WLST <P6_EPPM_Home>/scripts/start_primavera.py
Where:
<WebLogic_Home> is the WebLogic home directory. The default is
Oracle/Middleware/Oracle_Home.
<Java_Home> is the path to the JDK that is used by WebLogic.
<P6_EPPM_Home> is the P6 EPPM home directory that was set
during installation.
6) Save and close the file.
print('Stopping Primavera servers. This will not stop the Node Manager because it
may be needed for other servers.')
scripts_dir='<P6_EPPM_Home>/scripts'
adminserver_host='<Admin_Server_Hostname>'
adminserver_port='<Admin_Server_Port>'
<Managed_Server_Variable>='<Managed_Server_Name>'
# Create a variable, similar to the one above, for each managed server in the P6
EPPM domain.
connect(userConfigFile=scripts_dir+'/primaveraConfig.secure',userKeyFile=scrip
ts_dir+'/primaveraKeyfile.secure',url='t3://'+adminserver_host+':'+adminserver
_port)
# The following section of the script tries to shutdown a managed server. Copy and
modify this section of the script for each managed server in the P6 EPPM domain.
try:
print('PRM-Shutting down the managed server for <Managed_Server_Variable>')
shutdown(<Managed_Server_Variable>,'Server','true',100,'true')
except:
print('PRM-Failed to stop managed server: ' + <Managed_Server_Variable>)
54
Starting and Stopping Servers
# The following section of the script tries to shutdown the administration server.
try:
print('PRM-Shutting down <Admin_Server_Name>.')
shutdown('<Admin_Server_Name>','Server','true',100,'true')
except:
print('PRM-Failed to stop <Admin_Server_Name>.')
print('PRM-Shutdown Complete')
exit()
Notes:
<P6_EPPM_Home> is the P6 EPPM home directory that was set
during installation.
<Admin_Server_Hostname> is the name of the host where the
administration server was installed.
<Admin_Server_Port> is the port number of administration server.
The default is 7001.
<Managed_Server_Variable> is the variable that you created for a P6
EPPM application.
<Managed_Server_Name> is the logical name of the managed
server. The default managed server names for P6 EPPM are P6,
P6IntegrationAPI, p6procloudconnect, P6WebServices, and
TeamMember.
<Admin_Server_Name> is the logical name of the administration
server. The default is AdminServer.
3) Save and close the file.
4) Browse to <P6_EPPM_Home>\scripts and then create a text file called
stop_primavera.sh.
5) Edit stop_primavera.sh and then add the following lines:
export CLASSPATH=
<WebLogic_Home>/wlserver/server/bin/setWLSEnv.sh <Java_Home>/bin/java
weblogic.WLST <P6_EPPM_Home>/scripts/stop_primavera.py
Notes:
<WebLogic_Home> is the WebLogic home directory. The default is
Oracle/Middleware/Oracle_Home.
<Java_Home> is the path to the JDK that is used by WebLogic.
<P6_EPPM_Home> is the P6 EPPM home directory that was set
during installation..
6) Save and close the file.
55
P6 EPPM WebLogic Configuration Guide for On-Premises
#!/bin/bash
# wlsnodemgr startup script for Node Manager
# chkconfig: - 74 15
# description: weblogic Node Manager
# processname: wlsnodemgr
start(){
nohup su - $DAEMON_USER -c $ <P6_EPPM_Domain>/bin/startNodeManager.sh >
$LOG_FILE_LOC &
sleep 2m
nohup su - $DAEMON_USER -c $ <P6_EPPM_Home>/scripts/start_primavera.sh >>
$LOG_FILE_LOC &
}
stop(){
nohup su - $DAEMON_USER -c $<P6_EPPM_Home>/scripts/stop_primavera.sh >>
$LOG_FILE_LOC &
nohup su - $DAEMON_USER -c $<P6_EPPM_Domain>/bin/stopNodeManager.sh >>
$LOG_FILE_LOC &
}
case "$1" in
start)
start
;;
stop)
stop
;;
*)
56
Starting and Stopping Servers
Where:
<WebLogic_Home> is the WebLogic home directory. The default is
Oracle/Middleware/Oracle_Home.
<P6_EPPM_Domain> is the WebLogic domain for P6 EPPM that was
set during configuration.
<P6_EPPM_Home> is the P6 EPPM home directory that was set
during installation.
5) Save and close the file.
6) Create a background service by running the following command:
chkconfig wlsnodemgr on
Where:
<WebLogic_Home> is the WebLogic home directory. The default is
Oracle/Middleware/Oracle_Home.
<P6_EPPM_Domain> is the WebLogic domain for P6 EPPM that was
set during configuration.
57
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: To modify the port number on which node manager runs, navigate
to the WebLogic Server installation home directory, then navigate to
common\nodemanager. Open the nodemanager.properties file in a
text editor of your choice and set the value of ListenPort to the port
number you'd like to use in your environment.
58
Configuring Your Environment to Support Event Notification
59
P6 EPPM WebLogic Configuration Guide for On-Premises
The following procedure indicates how to set up a WebLogic Java Messaging Service (JMS)
message queue when the queue and P6 are on the same domain. See Sending Events to a
Remote WebLogic JMS Server (on page 66) if the application and the queue are on different
domains. For information about setting up other JMS-based message queues, see the vendor
documentation.
To set up the WebLogic JMS message queue:
1) In either a new or existing WebLogic domain, launch the WebLogic Administration
Console if it is not already open.
2) In the WebLogic Administration Console:
a. Create a new JMS server and persistence store. See Creating a JMS Server and
Persistence Store (on page 60).
b. Create a JMS module. See Creating a JMS Module (on page 61).
c. Create a new connection factory. See Creating a JMS Connection Factory (on page
61).
d. Create a new queue or topic. See Creating a JMS Message Queue and
Subdeployment (on page 62) to see how to create a new queue.
60
Configuring Your Environment to Support Event Notification
This location must already exist on your machine and you must have
read/write rights to this folder. No error messages appear on the
WebLogic console if the filestore is not configured correctly.
4. Click OK.
d. Under JMS Server Properties, select the new store from the Persistent Store list and
click Next.
e. Under Select Targets:
If you are deploying to a standalone server, select the administration server (for
example, AdminServer) as the target from the Target list and click Finish.
If you are deploying to a cluster, select the migratable target configured earlier.
Note: Make a note of this name, you will need to know which module to
expand in the Configuring the Security Policy for the WebLogic
Message Queue (on page 70) topic.
b. Under The following properties will be used to target your new JMS system
module, select a target server in the Servers box and click Next.
Note: If you are deploying to a cluster, select the cluster from the targets
list.
c. Under Add resources to this JMS system module, select the Would you like to add
resources to this JMS system module option and click Finish.
61
P6 EPPM WebLogic Configuration Guide for On-Premises
3) On the JMS Modules page, select the module to which you want to add the connection
factory.
4) On the Settings page, click the Configuration tab and under Summary of Resources click
New.
5) On the Create a New JMS System Module Resource page:
a. Under Choose the type of resource you want to create, select the Connection
Factory option and click Next.
b. Under Connection Factory Properties:
1. Enter a name for the connection factory in the Name field.
2. Enter a name in the JNDI field.
Note: Make note of the JNDI name. You will need to enter this name in
the JMS Connection Factory field of P6 Application Settings Eventing
page. If you are using a remote server, you will need to enter this name
in the Remote JNDI Name field on the Connection Factories tab in the
Creating a Foreign JMS Server (on page 69) topic.
3. Click Next.
c. Under The following properties will be used to target your new JMS system module
resource, ensure the correct server is targeted and click Finish.
Note: Make note of the JNDI name. You will need to enter this name in
the JMS Destination Name field of the P6 Application Settings Eventing
62
Configuring Your Environment to Support Event Notification
page. If you are using a remote server, you will need to enter this name
in the Remote JNDI Name field on the Destinations tab in the Creating
a Foreign JMS Server topic.
3. Click Next.
c. Under The following properties will be used to target your new JMS system module
resource, click Create a New Subdeployment.
7) On the Create a New Subdeployment page, enter a name in the Subdeployment Name
field and click OK.
8) On the Create a New JMS System Module Resource page:
a. Select the new subdeployment from the Subdeployments list.
b. Select the JMS server you created when creating the Persistence Store as the target
from the JMS Servers box.
c. Click Finish.
Configuring Eventing in P6
If you want events to occur when business objects are created or updated, or when an operation
is performed, you must configure Eventing page in the Application Settings of P6.
To configure the Eventing page:
1) Launch P6.
2) Click Administration.
3) On the Administration navigation bar, click Application Settings.
4) On the Application Settings page, click Eventing.
5) Click the General tab.
6) In the Eventing section:
a. Select Eventing.
b. Set additional settings as appropriate for your implementation. See Eventing Settings
(on page 64) for details on available settings.
7) In the Directory Services section:
a. In the Provider URL field, enter the URL of the JNDI provider for the Connection Factory.
For example:
63
P6 EPPM WebLogic Configuration Guide for On-Premises
Eventing Settings
Eventing selected —
Select to enable the sending of events for P6, P6
EPPM Web Services, and P6 Integration API.
64
Configuring Your Environment to Support Event Notification
Interval 5m 1s-10m
The length of time that the Event Notification
System uses to determine how often it sends
events to the message queue. Specifying a
smaller time increases the frequency with which
the Event Notification System reports event
occurrences to the message queue.
65
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: If you are using more than one server, install P6 on the local
server.
66
Configuring Your Environment to Support Event Notification
2) In the wizard, create a WebLogic domain on the remote server to which you will be sending
the events. See Creating a WebLogic Domain on a Remote or Local Server (on page
68).
Note: Rename the WebLogic administration server to a name that is
different from the name you used to deploy the P6 application. For
example, RemoteAdminServer.
3) Start the new server and launch the WebLogic Administration Console. The new server
will act as the remote server.
4) In the WebLogic Administration Console:
a. Create a WebLogic message queue.
1. Create a new JMS server. See Creating a JMS Server and Persistence Store (on
page 60).
2. Create a JMS module. See Creating a JMS Module (on page 61).
3. Create a connection factory. See Creating a JMS Connection Factory (on page 61).
4. Create a new queue or topic. See Creating a JMS Message Queue and
Subdeployment (on page 62) to see how to create a queue.
b. Configure the trust relationship on the remote server. See Configuring a Trust
Relationship (on page 68).
5) Create a WebLogic domain on the local server from which the events will be sent. See
Creating a WebLogic Domain on a Remote or Local Server (on page 68).
6) Start the local server and launch the WebLogic Administration Console.
7) In the WebLogic Administration Console:
a. Target the JMS Server to a migratable target. See Targeting the JMS Server to a
Migratable Target (on page 59)
b. Create a new JMS server. See Creating a JMS Server and Persistence Store (on page
60).
c. Create a JMS module. See Creating a JMS Module (on page 61).
d. Create a foreign server. See Creating a Foreign JMS Server (on page 69).
e. Configure the trust relationship on the local server. You must use the same credentials
that were used on the remote server. See Configuring a Trust Relationship (on page
68).
8) Restart both Weblogic Administration Console servers (restart the domains, not the
machines).
9) If it is not already installed, install P6 EPPM Web Services or P6 on the local server.
10) Launch P6 to configure message queue settings and event notification options. See
Configuring Eventing in the P6 (on page 63). The values you enter in the Directory
Service and Eventing sections of the P6 Application Settings Eventing page should be the
the Local JNDI names of the Destination and the Connection Factory in the Foreign JMS
Server.
67
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: Make a note of the name and password, you will need this
information for the JNDI Properties Credential fields and the JNDI
Properties box in the Creating a Foreign JMS Server (on page 69)
topic.
68
Configuring Your Environment to Support Event Notification
a. Enter and confirm credentials in the Credential and Confirm Credential fields.
Note: Make a note of the credentials you enter for the remote server;
you must enter the same credentials for both servers.
b. Click Save.
6) On the Configuration tab of the Settings page, click the name of the new foreign server.
7) On the Settings page, click the Configuration tab and then click the General tab.
8) On the General tab:
a. Enter the URL of the remote server created from step 4 of section Sending Events to a
Remote WebLogic JMS Server in the JNDI Connection URL field.
For example:
If you are using a standalone server: t3://<hostname>:7001.
If you are using a cluster: t3://<hostname>:7003,<hostname>:7004.
b. Enter the password that you used to log on to the remote WebLogic server in the JNDI
Properties Credential field.
c. Reenter this password in the Confirm JNDI Properties Credential field.
d. Enter java.naming.security.principal=<name> in the JNDI Properties box, where name is
the user name you used to log on to the remote WebLogic server.
e. Click Save.
9) On the Configurations tab, click the Destinations tab and click New under Foreign
Destinations.
69
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: Make a note of the name and password as they will be needed in
the Configuring and Testing the WebLogic Message Queue Security
(on page 71) topic.
7) On the Settings page for the user, click the Roles and Policies tab and then click the
Realm Policies tab.
8) On the Realm Policies tab, under Policies expand JMS then expand the module you
created for the remote server and click the queue you created for the remote server.
70
Configuring Your Environment to Support Event Notification
9) On the Settings page for the queue, click the Security tab and then click the Policies tab.
10) On the Policies tab:
a. In the Policy Conditions section, click Add Conditions.
b. Under Choose a Predicate, select User from the Predicate list and click Next.
c. Under Edit Arguments:
1. Enter the user name for the user you just created in the User Argument Name field
and click Add. You can now use this user in P6.
2. Click Finish.
11) On the Settings page for the queue, click Save.
12) Log in to P6 as an administrator.
13) From the Administer menu, select Applications Settings.
14) On the Application Settings page, click Eventing.
15) Enter information in the required fields. For more information about information that is
required for each field, refer to Configuring Eventing in P6 (on page 63).
16) Change and test the Directory Services user name and password. See Configuring and
Testing the WebLogic Message Queue Security (on page 71).
Note: The user name and password were set in the Configuring the
Security Policy for the WebLogic Message Queue (on page 70) topic.
71
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: Please ensure that you have completed the steps in the Sending
Events to a Remote WebLogic JMS Server (on page 66) section
before attempting to configure your WebLogic deployment of P6 to use
SSL.
Note: When P6 and the WebLogic message queue are on the same
server, they will use the same certificate and trust store.
Note: This topic assumes that you have already set up a foreign JMS
server. See Creating a Foreign JMS Server (on page 69).
72
Configuring Your Environment to Support Event Notification
2) In the WebLogic Administration Console, enable the SSL port on both servers. See
Enabling the SSL Port (on page 73).
3) Log in to P6 as an administrator.
4) From the Administer menu, select Applications Settings.
5) On the Application Settings page, click Eventing.
6) In the Provider URL field, under Directory Services, enter the protocol over SSL (t3s:// or
iiops://) and the SSL port. For example, t3s://<hostname>:7002.
7) Import the certificate of the server hosting the WebLogic message queue into the trust store
of the server hosting P6. Please refer to the WebLogic documentation for detailed
instructions.
http://download.oracle.com/docs/cd/E21764_01/web.1111/e13707/identity_trust.htm
http://download.oracle.com/docs/cd/E21764_01/apirefs.1111/e13952/taskhelp/security/C
onfigureIdentityAndTrust.html
8) In the WebLogic Administration Console, expand Services and click JMS Modules in the
Domain Structure pane.
9) On the JMS Modules page, click the module that contains the foreign JMS server you are
using.
10) On the Settings page for the module, click the foreign JMS server on the Configuration tab.
11) On the Settings page for the foreign JMS server, use the protocol over SSL (t3s:// or iiops://)
and the SSL port in the JNDI Connection URL on the General tab. For example,
t3s://<hostname>:7002.
73
P6 EPPM WebLogic Configuration Guide for On-Premises
74
WebLogic Clustering for High Availability
In This Section
Introduction to High Availability................................................................................ 75
Prerequisites ........................................................................................................... 76
Setting Up WebLogic Clustering for P6 EPPM Applications .................................... 77
75
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: Each server instance in a cluster must run the same version of
WebLogic.
Prerequisites
76
WebLogic Clustering for High Availability
Note: You must install the same version of WebLogic on each machine.
77
P6 EPPM WebLogic Configuration Guide for On-Premises
Note: If you plan to add a new managed server on the same physical
server as the Administration server, you can leave this field blank. This
allows all local listening addresses on the server to be utilized.
c. In the Server Listen Port field, enter the port number from which you want to access the
server instance.
78
WebLogic Clustering for High Availability
Tip: You can more easily manage and maintain the servers in your
cluster by using the same port number across all of your managed
servers.
79
P6 EPPM WebLogic Configuration Guide for On-Premises
80
WebLogic Clustering for High Availability
Where:
<Domain_Path> is the full path to the P6 EPPM domain. For
example,
<WebLogic_Home>\user_projects\domains\<P6_EPPM_Domain>.
<Template_Location> is the full path where P6 EPPM Web Services
creates the template. For example, C:\oracle\user_templates.
3) Copy the Clustered_Domain.jar file from <Template_Location> to the machines on
which you have created additional servers.
4) Navigate to <WebLogic_Home>/wlsever/common/bin.
5) Depending on your operating system, compete the following:
a. For Windows, run:
Unpack.cmd –template=<Copy_Location>/Clustered_Domain.jar
–domain=<WebLogic_Home>/user_projects/domains/Clustered_Domain
Unpack.sh –template=<Copy_Location>/Clustered_Domain.jar
–domain=<WebLogic_Home>/user_projects/domains/Clustered_Domain
81
P6 EPPM WebLogic Configuration Guide for On-Premises
Where:
<Copy_Location> is the path to where you copied the
Clustered_Domain.jar file. For example, C:\temp.
<WebLogic_Home> is the WebLogic home directory. The default is
Oracle/Middleware/Oracle_Home.
6) Repeat these steps for each clustered server.
For Unix
To start the node manager upon system startup and to run it in the background:
1) Open a terminal and run the following script:
nohup
<Oracle_Middleware_Home>/user_projects/domains/<Primavera_Domain>/bi
n/startNodeManager.sh > logfilename.log 2>&1 &
2) Create a shell script using the following sample script:
#! /bin/bash
#
# wlsnmd Oracle Weblogic NodeManager service
#
# chkconfig: 345 85 15
# description: Oracle Weblogic NodeManager service
case "$1" in
start)
export WL_HOME=<Oracle_Middleware_Home>/wlserver/
$WL_HOME/../user_projects/domains/<Primavera_Domain>/bin/startNodeManager.sh
;;
*)
echo "Usage: $0 {start}"
exit 1
esac
exit_status
# chmod +x /etc/init.d/nodemgr
# chkconfig --add nodemgr
82
WebLogic Clustering for High Availability
For Windows
To create and run a node manager as a Windows service:
1) Log in to a machine with administrative privileges.
2) Go to <Oracle_Middleware_Home>/wlserver/server/bin.
a. Edit installNodeMgrSvc.cmd.
b. Comment out the following lines:
set NODEMGR_HOST=<host>
set NODEMGR_PORT=<port>
set NODEMGR_HOST=<host>
set NODEMGR_PORT=<port>
83
P6 EPPM WebLogic Configuration Guide for On-Premises
3) When mod_wl_ohs receives the updated list, it dynamically adds any previously unknown
servers, that may have been down during the initial request, to the list of known servers,
which enables all future requests to be load balanced across the full cluster member list
defined in the mod_wl_ohs configuration.
This process also enables new managed servers to be added to the cluster without having to
manually update mod_wl_ohs as long as the new managed server host and port is determined
ahead of time.
In an example scenario, assume that the WebLogic Cluster consists of WLS1, WLS2, and
WLS3. Also assume that all three managed servers have been added to the mod_wl_ohs
clustering directive, but only WLS1 and WLS2 are known to mod_wl_ohs during an initial
request because WLS3 is offline.
When mod_wl_ohs first receives a request, it attempts to send that request to either WLS1 or
WLS2. If during the request WLS3 becomes active, the list of available servers is updated to
include WLS3 for future requests. If, however, WLS1 and WLS2 are unavailable, but WLS3
becomes available during the request, the request is rejected because mod_wl_ohs has no way
of knowing WLS3 exists.
To configure mod_wl_ohs:
1) Go to
<OHS_Middleware_Home>/user_projects/domains/<Primavera_Domain>/config/fmwconfig/c
omponents/OHS/instances/<instance_name>.
2) Edit mod_wl_ohs.conf.
3) Add the following information to mod_wl_ohs:
<Location /p6>
WLSRequest On
WebLogicCluster <WebLogic_server1>:<port1>, <WebLogic_server2>:<port2>,
<WebLogic_server3>:<port3>
</Location>
<Location /p6tmweb>
WLSRequest On
WebLogicCluster <WebLogic_server1>:<port1>, <WebLogic_server2>:<port2>,
<WebLogic_server3>:<port3>
</Location>
<Location /p6ws>
WLSRequest On
WebLogicCluster <WebLogic_server1>:<port1>, <WebLogic_server2>:<port2>,
<WebLogic_server3>:<port3>
</Location>
./stopComponent.sh <component_name>
./startComponent.sh <component_name>
84
WebLogic Clustering for High Availability
stopComponent.bat <component_name>
startComponent.bat <component_name>
./startNodeManager.sh
85
Where to Go from Here
Now that you have deployed P6 in WebLogic, you can begin using P6. You may find the
following guides useful for help getting started:
P6 EPPM System Administration Guide
P6 EPPM Application Administration Guide
P6 EPPM Database Administration Guide
P6 Help
P6 Team Member User's Guide
Depending on what other applications you are using, you may also need the following guides:
P6 Professional
P6 Professional Installation and Configuration Guide for your database
Primavera Data Warehouse
Primavera Data Warehouse Installation and Configuration Guide
Analytics
Analytics Installation and Configuration Guide
Additional Applications
P6 EPPM BI Publisher Configuration Guide
P6 EPPM BPM Configuration Guide
P6 EPPM Content Repository Configuration Guide
P6 EPPM Oracle Identity Manager Configuration Guide
Primavera Oracle Access Manager Configuration Guide
Primavera Oracle Enterprise Manager Configuration Guide
87
P6 EPPM WebLogic Configuration Guide for On-Premises
Documentation Accessibility
For information about Oracle's commitment to accessibility, visit the Oracle Accessibility
Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.
88
For More Information
89
P6 EPPM WebLogic Configuration Guide for On-Premises
90
Legal Notices
Oracle Primavera P6 EPPM WebLogic Configuration Guide for On-Premises
Copyright © 2018, Oracle and/or its affiliates. All rights reserved.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be
trademarks of their respective owners.
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC
trademarks are used under license and are trademarks or registered trademarks of SPARC
International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or
registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open
Group.
This software and related documentation are provided under a license agreement containing
restrictions on use and disclosure and are protected by intellectual property laws. Except as
expressly permitted in your license agreement or allowed by law, you may not use, copy,
reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish or
display any part, in any form, or by any means. Reverse engineering, disassembly, or
decompilation of this software, unless required by law for interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be
error-free. If you find any errors, please report them to us in writing.
If this is software or related documentation that is delivered to the U.S. Government or anyone
licensing it on behalf of the U.S. Government, the following notice is applicable:
U.S. GOVERNMENT END USERS: Oracle programs, including any operating system,
integrated software, any programs installed on the hardware, and/or documentation, delivered to
U.S. Government end users are “commercial computer software" pursuant to the applicable
Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use,
duplication, disclosure, modification, and adaptation of the programs, including any operating
system, integrated software, any programs installed on the hardware, and/or documentation,
shall be subject to license terms and license restrictions applicable to the programs. No other
rights are granted to the U.S. Government.
This software or hardware is developed for general use in a variety of information management
applications. It is not developed or intended for use in any inherently dangerous applications,
including applications that may create a risk of personal injury. If you use this software or
hardware in dangerous applications, then you shall be responsible to take all appropriate
failsafe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation
and its affiliates disclaim any liability for any damages caused by use of this software or
hardware in dangerous applications.
This software or hardware and documentation may provide access to or information on content,
products and services from third-parties. Oracle Corporation and its affiliates are not responsible
for and expressly disclaim all warranties of any kind with respect to third-party content, products,
and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or
damages incurred due to your access to or use of third-party content, products, or services.
91