Configuring a Project.net Production Deployment on WebLogic? 9.2

[*** Note: this page is a placeholder for the actual instructions ***] [*** Note: WebLogic? 9.2 is only supported on Project.net 8.3 and above **]

Overview

A Project.net production environment can be created on any operating system platform that supports Java and the WL 9.2 application server. The installation will also need access to an Oracle database server, SMTP mail server, file storage server and optional web server. Follow the steps below to configure a system to run the Project.net application on the Tomcat application server in a production environment.

1. Download the needed software

Project.net Installation Package
Download: <need a pointer here to P.net download page - DK>

WebLogic? 9.2
Download: http://commerce.bea.com/showproduct.jsp?family=WLP&major=9.2&minor=2

Oracle Database 10g (10.2) (Express, Standard or Enterprise)
http://www.oracle.com/technology/software/products/database/oracle10g/index.html

2. Install and Setup the Oracle Database

  • Install Oracle 10.2 Enterprise Edition
  • Run the Oracle "Database Configuration Assistant" to create a database instance for the Project.net Application. Create an Oracle database instance (called v83dev or any name you want). Set and remember the SYSTEM password.
  • Run the Project.net database schema creation script
    1. Go to the database script directory in the source code tree: core\db\oracle\createscripts\admin.
    2. Edit the pnetMasterDBBuild.bat (or pnetMasterDBBuild.sh) file. Set the environment variables in this script to match your database configuration. Further instructions are available in the script file.
    3. To start the database installation, run the batch command pnetMasterDBBuild.bat (or pnetMasterDBBuild.sh) from within the core\db\oracle\create-scripts\admin directory.
    4. Check the logs in the log file location you have specified inside of the pnetMasterDBBuild file. You will notice some errors in the logs about public synonym already exists, etc., but there should be only about 55 lines in the log file with the word "ERROR".
    5. If the script fails and you need to re-run it, it's best to run the core/db/oracle/create-scripts/tools/drop_pnet_and_user_schemas.sql script to clean everything up before trying again.



If you have installed Oracle XE, then database is already created with name XE.

3. Install and setup WL application server

You can install WL both in GUI and console modes.
To start console based installation, run: server92_<YOUR_PLATFORM> -mode=console


Next steps are equal for all installation types and all platforms.

  • Create new BEA home, you can change directory or leave it default.
  • Unset installation for profiling tools
  • Use default paths for Server and WorkShop?
  • Installation will start, when it will be finished, uncheck "Run quickstart".




Create admin domain

  • Start configuration wizard

Windows: from start menu
Linux: cd /bea/weblogic92/common/bin and run ./config.sh

  • Mark "Create new domain", next
  • Mark "Create domain automatically", next
  • Enter password for WL user (also you can change user name), next
  • Select Product Mode and JRockit as JDK, next
  • accept default value on next page
  • Enter domain name: pnet



Update java security policy
Download JCE zip from sun's site for JDK 1.5 and unpack it to bea/jdk.../jre/lib/security


Update Java libraries

  1. mkdir bea\jdk150\jre\lib\endorsed
  2. copy installer\jdk\endorsed\*.jar bea\jdk150\jre\lib\endorsed



Configure PRM-1 server in WL
Temporary start Admin domain manually:
Windows: use start menu weblogic folder - Start Server
Linux: cd ~/bea/user_projects/domains/pnet/ and ./startWebLogic.sh
You will have to provide username and password entered before

After server start, enter console: http://localhost:7001/console/[[BR]] with the same username information
Open Environment-Servers and click on "Lock and Edit" and then "NEW" to start server creation

* Server name: PRM-1 * Port: 20000
And click Finish, now you have new server configured and ready to run.
click on Apply changes to commit changes

Now you have PRM-1 ready for next steps: firts "Lock and Edit", and click on PRM-1 name to open options. Select Configuration - Server start
Enter values for:
java home (path to jdk150)
bea home (path to bea dir)
root dir (path to you domain - ...bea/user_projects/domains/pnet)
Do not forget to save changes and click Apply
Create Database connection
Open Services - JDBC - Datasources. "Lock and Edit". And create new Datasource.
Jndi name: jdbc/PnetDB, database Oracle with draver Oracle Thin.
Click Next twice and enter server connection data. Database user name is taken from DB creation scripts (this is not you database admin account!)
Now click test, and, if connection is ok, finish.
Activate changes, click on datasource created and open Target tab. "Lock and Edit", and select PRM-1 as target. Save all changes and activate.
Now you have database conenction and last step is mail resource creation.

Enter Services - Mail Sessions, "Lock" and create new one. Enter any name and save it. Now open properties by clicking sesison name.
Jndi name: mail/PnetSession
Properties:

mail.transport.protocol=smtp
mail.smtp.host=YOUR-COMPANY’S-MAILSERVER

on Target tag select PRM-1, save all and activate


To test PRM-1 start it. But before this you should start NodeManager? - this service will mamage your servers in background.
First create Machine, using Environment tree. Give it any name and do not change any parameters. No edit PRM-1 server properties and add created machine.
Starting NodeManager? is simle:
run startNodeManager script from dir: bea/weblogic92/server/bin

Now you are ready to start PRM-1. Click it and select Control Tab, click "start" button will start PRM-1 server.
You should see it message at: http://localhost:20000[[BR]]

4. Deploy PNET ear

To deploy PNET go to Deployments, press "Lock&Edit" and then install.
Browse EAR file, mark it and press NEXT. Leave "Install this deployment as an application". Mark PRM-1 as target server. On next page mark: "Copy this application onto every target for me", and press FINISH.
Activate changes, and after manual start for Node Manager, PRM-1 you will be able to start PNET.



5. Configure PNET to start at server boot

Linux:
To make PNET start on your server boot you need 3 components: Node Manager, Admin Server and Managed Server.


Node manager already has start script startNodeManager.sh in bea/weblogic92/server/bin

Scripts for Admin Server and Managed one you should create.
Go to: bea/user_projects/domains/pnet/bin. And make copies
cp startWebLogic.sh startAdmin.sh
cp startManagedWebLogic.sh startPRM.sh

Edit startAdmin.sh and add

WLS_USER="weblogic"
export WLS_USER

WLS_PW="weblogic"
export WLS_PW

SERVER_NAME="AdminServer"
export SERVER_NAME

Add this lines next to first one.

Edit startPRM.sh

WLS_USER="weblogic"
export WLS_USER

WLS_PW="weblogic"
export WLS_PW

SERVER_NAME="PRM-1"
export SERVER_NAME

use your username and password.

You may find WLS_USER=" in sh scripts. Remove them.

You should also create init script for your linux box, use similar:

cd /<PATH>/bea/weblogic92/server/bin
./startNodeManager.sh&
sleep 60
cd /<PATH>/bea/user_projects/domains/pnet/bin
./startAdmin.sh&
sleep 120
cd /<PATH>/bea/user_projects/domains/pnet/bin
./startPRM.sh&

Step 6: Configure Project.net Server Logging

Instructions

  1. If it does not exist, create the directory with configs <SOME PATH>\config
  2. Copy installer\logconfig\log4j-config.xml to <SOME PATH>\config\log4j-config.xml
  3. log4j-config.xml file and modify the value for the name of the log file by deleting @default.logging.location@/, as shown:
    <param name="file" value="pnet-application.log"/>
    

Use path to this file as VM parameter in server start configuration.


Step 7: Configure Project.net System Settings

Now that the server is up and running, you will need to configure some settings within Project.net. These are set through the Application Administration interface.

7.1 Specify document vault storage

Instructions

  1. If not already logged into the Project.net server, log into http://localhost:20000 as appadmin user (default password: appadmin).
  2. From the Personal Workspace, click "Application Space" on the lower left to enter the Application Administration interface.
  3. Select Manage / Doc Vault.
  4. Enter a directory path for each of the three "Path to Repository Root" such as:
    c:\pnet-doc-vault\one
    c:\pnet-doc-vault\two
    c:\pnet-doc-vault\three
    
  5. Click [Update].

7.2 Customize system settings

Prerequisites

  • You should be logged into the Application Administration as above
  • Note, if document upload or Microsoft Project import is failing, check the settings in this section.

Instructions

  1. Select Manage / Sys Settings
  2. Change the following variables:
  • Variable: siteHost
    • New Value: The external name of the Project.net website.
    • Description: This variable defines the hostname and port number that Project.net uses when it constructs URLs containing the hostname and port of the web site. Typically used in email notifications, this variable should be set to the fully qualified name of your Project.net server.
    • Example values: myserver.com, myserver.com:7001
  • Variable: supportEmail
    • New Value: Email address of support team.
    • Description: Specifies the email address listed in the Help pages for support queries. It is also used if a user submits an automated error report within the application.
    • Example value: support@project.net
  • Variable: postDataTempDir
    • New Value: File path to directory for tempoary file storage
    • Description: : This value is used as a temporary storage when uploading files. Make sure that the WebLogic user has access to write in the specified directory.
    • Example value: C:\temp
  • Variable: mpdImportTempDirectory
    • New Value: File path to directory for tempoary file storage
    • Description: : This value is used as a temporary storage when importing a Microsoft Project file - the file is placed here before it is converted into Project.net format. Make sure that the WebLogic user has access to write in the specified directory.
    • Example value: C:\temp

7.3 Create a configuration for your installation

Project.net contains many of its settings in configuration tokens; these tokens are stored in named configuration sets. For example, if you want your company's name and logo to appear on the Project.net login page, you would change the values of two specific tokens.

While you can alter the Project.net default configuration set, it is recommended that you create a configuration just for your installation. Project.net will first use the values from your configuration. Any values not set in your configuration will receive their values from the system default configuration. Using a separate configuration isolates your custom settings, making them more obvious. More importantly, alternate configurations are preserved whenever the Project.net software is upgraded, while the default configuration loses any changes.

Note, Project.net can have more than one active configuration. Which configuration is selected for a user is determined by the URL or IP address he or she used to access the Project.net server. For example, users accessing the server through projects.mycompany.com may see the results of the default configuration, while those using custom-projects.mycompany.com could see a site customized by an alternate configuration.

7.3.1 Modify the default configuration

You must change one token in the default configuration.

Instructions

  1. From within the Application Administration interface, chose Manage / Configurations.
  2. Click on Project.net Configuration from the list of configurations.
  3. Choose Tokens from the menu on the left.
  4. Enter defaulthost in the Token Name: search field and click the Filter button.
  5. Change the Project.net Default value of prm.global.brand.defaulthost to the external name of the Project.net website. Usually, this is the same as the siteHost variable above.
  6. Submit your changes. They will not take effect until the server has been restarted from the WebLogic Console or the Windows Services Console.

7.3.2 Create a custom configuration

Follow these steps to create a installation-specific configuration

Instructions

  1. From within the Application Administration interface, chose Manage / Configurations.
  2. Click the Create icon to create a new configuration.
  3. Enter:
    • Name - Suggestion: use Standard Production Configuration or use the value used for the siteHost token.
    • Description - Suggestion: include the siteHost value as part of the description.
    • Abbreviation – This will be used as part of the token identifier.
    • Choose the Default Language. You can leave this as the default value.
    • Select multiple Supported Languages by holding down the Control key while clicking the desired names. You can leave this as the default value.
    • Supported Host Names (CSV) – The values in this field determine when this configuration set will be used. List the web site names you want associated with configuration, separated by commas. If you enter projects.mycompany.com, login.projects.mycompany.com either address will cause the values in this configuration set to be used, in conjunction with the values from the default configuration.
  4. Submit your changes to create the configuration set.

7.3.3 Site-specific token values

Follow these steps to create a installation-specific configuration

Instructions

  1. From within the Application Administration interface, chose Manage / Configurations.
  2. Click on the name of the custom configuration from the list of configurations.
  3. Choose Tokens from the menu on the left.
  4. Select Basic Branding from the Category list.
  5. Click Filter
  6. Set the appropriate values for the tokens below.
  7. If a token does not appear in the list you can enter its name in the Token Name: search field and click the Filter button to locate it.
    prm.global.brand.defaulthost: Same as the default configuration token
    prm.global.brand.defaultjsprooturl: /
    prm.global.brand.defaulttimezone
    prm.global.brand.defaultsitescheme: http://
    prm.global.login.channel.login.title
    prm.global.brand.logo.login.href
    prm.global.default.site.href
    prm.global.footer.copyright.href
    prm.global.login.requestinformation.text
    prm.global.default.email.fromaddress
    prm.global.help.feedback.emailaddress
    prm.global.help.info.emailaddress
    prm.global.help.legal.emailaddress
    prm.global.help.sales.emailaddress
    prm.global.help.support.emailaddress
    prm.base.errors.reportErrors.email 
    
  8. Submit your changes. They will not take effect until the server has been restarted from the WebLogic Console or the Windows Services Console.

For information on customizing Project.net with your company's text and images see Customizing Project.net.


Step 8: Install the Master License Properties for your Server

All Project.net servers require Project.net Master Properties. Without these properties it is not possible to register as a user or log in except as the application administrator.

Prerequisites

  • The document Installing Licensing Files.pdf from the Downloads page contains complete details. A brief summary of the license installation steps is listed below.
  • The Master License Properties and License Key files for Open Source installations are available from the Downloads page.

Instructions

  1. If not already logged into the Project.net server, log into http://localhost:20000 as appadmin user (default password: appadmin).
  2. From the Personal Workspace, click Application Space on the lower left to enter the Application Administration interface.
  3. Select Licensing in the left navigation bar.
  4. Click on the light blue Licensing Tasks tab near the top of the screen.
  5. Click on Update License Properties.
  6. Follow the steps on the screen, pasting in the license properties from the license file you received from Project.net.
  7. Again, click on the light blue Licensing Tasks tab near the top of the screen.
  8. Click on Install a new license.
  9. Follow the steps on the screen, pasting in the license key from the license file you received from Project.net.

9. Web server integration