Installing OrkWeb on IBM WebSphere Application Server

© 2015 OrecX. All Rights Reserved. Table of Contents:

Table of Contents: 2

Introduction 3

Configuring IBM WebSphere for OrkWeb 3

Installing OrkWeb on WebSphere 4

Install OrkTrack and OrkWeb 4

Review the status of OrkTrack and OrkWeb 4

Configuring OrkWeb 5

OrkTrack 5

OrkWeb 5

Access OrkWeb 6

Playback issue 6

Appendix A 6

Sample Configuration Files 6

2 Introduction

This tutorial makes an assumption that WAS has already been installed and a profile has already been created.

The tutorial will focus on how to configure WAS and install OrkWeb on it.

Configuring IBM WebSphere for OrkWeb ● Change the default server port ○ Recommended - Using the administrative console: 1. Open the administrative console page 2. From the left menu Environment -> Virtual hosts -> default host 3. Under "Additional Properties" click "Host Aliases" 4. You should find a port that looks like 9080, this is the http port, click on the Asterisk (*) sign 5. Set the port value to 8080 6. Restart by stopping and starting the server using "First steps console" ● To allow OrkWeb to decrypt the provided license, you should enable the option "decrypting using public key" ○ Open the administrative console page ○ From the left menu expand Servers -> Server Types -> WebSphere Application Servers -> server1 (could have different name based on your configs) 1. Under "Server Infrastructure" click "Process definition" 2. Under "Additional Properties" click Virtual Machine 3. Add the following line in the "Generic JVM arguments" box: -Dcom.ibm.crypto.provider.DoRSATypeChecking=false 4. Apply -> OK 5. You should see a message on top of the page with a save link. Click it to save the changes. 6. Restart by stopping and starting the server using "First steps console" ● Setup Oreka Shared Libraries 1. Open the administrative console page 2. From the left menu Environment -> Shared libraries 3. Select scope from the drop down menu (the scope should be something like Node=your_pc_nameNode01, on my machine it is: wfadelNode01) 4. Provide the name of the library. For convention you could use the library name and version such as: oreka-tomcat-java-deps-1.8-2740 5. In the classpath box, provide the absolute path to the library jars on your drive. 6. Click OK 7. You should see a message box on the top of the page with a save link, click the link to save.

3 8. From the left menu expand Servers -> WebSphere application servers -> server1 (the name of your server could be different) 9. Under "Server Infrastructure" expand Java and Process Management -> Class loader -> New 10. From the class loader order choose "Classes loaded with parent class loader first" option 11. Click Apply and Ok, then save from the message box 12. You should be back to the class loader page, select the newly created class loader 13. Under "Additional Properties" select "Shared library references" -> Add 14. On the Add page, you should see the library you defined in the list under "library name", select it, then Apply, OK. 15. Save the changes using the link in the top message box. 16. Restart by stopping and starting the server using "First steps console"

Installing OrkWeb on WebSphere

Install OrkTrack and OrkWeb 1. Open the administrative console page 2. From the left menu, expand Applications 3. Select New Application -> New Enterprise Application 4. Path to the new application -> Choose File (Select orktrack.war from your local drive) -> Next 5. How do you want to install the application? -> Fast Path -> Next 6. Select installation options -> Only change application name to orktrack and keep the other default values -> Next 7. Map modules to servers -> Check the checkbox next to the app name -> Next 8. Map virtual hosts for Web modules -> Check the checkbox next to the app name -> Next 9. Map context roots for Web modules -> set context root to "/orktrack" -> Next 10. On the Summary Page review the information -> Finish 11. Repeat the process for OrkWeb by going to step 2 and replacing orktrack with orkweb. Review the status of OrkTrack and OrkWeb 1. From the left menu expand Applications -> Application Types -> WebSphere enterprise applications 2. You should see a list of the running apps, and among the list you should see OrkTrack and OrkWeb 3. If the installation process went properly, you should see green arrow next to the apps 4. You might be required to save the changes in the top message box, and then restart the server for the changes to be in effect. 5. To restart, stop and start the server using "First steps console". 6. You can also start/stop the applications using the control buttons on top of the list.

4

Configuring OrkWeb For OrkWeb to work properly, the following two configuration files should be placed in a configuration folder such as /etc/orkweb/: database.hbm. logging.properties For sample configuration files please see the Appendix A section below.

Once the configuration folder and files are set, some files need to be edited to refer to the proper paths.

OrkTrack ● Open and edit the file: WEB_SPHERE_HOME_DIR/AppServer/profiles/AppSrv01/installedApps/your_pc_nam eNode01Cell/orktrack.ear/orktrack.war/WEB­INF/web.xml ​ ● Find the called ConfigDirectory and set to the configuration folder path, e.g. /etc/orkweb/ ● Comment out the TomcatHome related lines: TomcatHome C:/Program Files/Apache Software Foundation/Tomcat 7.0 ● Save and exit

OrkWeb ● Open and edit the file: WEB_SPHERE_HOME_DIR/AppServer/profiles/AppSrv01/installedApps/your_pc_nam eNode01Cell/orkweb.ear/orkweb.war/WEB­INF/web.xml ​ ● Find the called ConfigDirectory and set to the configuration folder path, e.g. /etc/orkweb/ ● Comment out the TomcatHome related lines: TomcatHome C:/Program Files/Apache Software Foundation/Tomcat 7.0 ● Save and exit

5 After finishing editing the file, you need to restart the WAS instance.

Access OrkWeb ● Open http://localhost:8080/orkweb/app (or ​ ​ http://websphere_server_ip:8080/orkweb/app) in your browser ​ ● Login and test the application. ● If you cannot login, clean the browser's cache and try again.

Playback issue ● WebSphere doesn't serve an external context as tomcat does, and this is a major issue for /audio and /screen folders that are needed to playback tracks. The following steps show how to overcome this issue: ○ Create two empty war files named: audio.war and screen.war ○ Follow the steps in Install OrkTrack and OrkWeb to install those war file to WebSphere ○ Change the access permissions of the exploded wars so that orkaudio can write to them. You can usually find the folders under: WEB_SPHERE_HOME_DIR/AppServer/profiles/AppSrv01/installedApps/your_p c_nameNode01Cell/audio.ear/audio.war ○ Other suggestions might be to serve those external contexts using httpd server. ● If the playback is not working, and the browser's error console shows that MontioredUserService.js script is not found, then this is probably related to DWR problem. The following steps show how to fix it: ○ Check your shared library folder, and sure that dwr.jar is not in that folder. ○ If it exists, please delete it and restart the server. ○ Also make sure that dwr.jar is under /WEB-IN/libs for both orkweb and orktrack projects.

Appendix A

Sample Configuration Files database.hbm.xml (for MySQL) org.hibernate.dialect.MySQL5InnoDBDialect 200

6 com.mysql.jdbc.Driver jdbc:mysql://localhost/oreka?characterEncoding=UTF­8 20 root

update false

true 1 org.hibernate.cache.HashtableCacheProvider logging.properties ### stdout ### log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout #log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %c %5p %C{1}:%L ­ %m%n log4j.appender.stdout.layout.ConversionPattern=%d{ISO8601} %c %5p ­ %m%n

### orkweb.log ### log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=/var/log/orkweb/orkweb.log log4j.appender.file.MaxFileSize=7000KB log4j.appender.file.MaxBackupIndex=20 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{ISO8601} %c %5p ­ %m%n

### orklicense.log ### log4j.logger.net.sf.oreka.orkweb.LicenseManager=info, license log4j.appender.license=org.apache.log4j.RollingFileAppender log4j.appender.license.File=/var/log/orkweb/orklicense.log log4j.appender.license.MaxFileSize=5000KB log4j.appender.license.MaxBackupIndex=5 log4j.appender.license.layout=org.apache.log4j.PatternLayout

7 log4j.appender.license.layout.ConversionPattern=%d{ISO8601} %c %5p ­ %m%n

### orkweb_security.log ### log4j.logger.security.net.sf.oreka=info, security log4j.appender.security=org.apache.log4j.RollingFileAppender log4j.appender.security.File=/var/log/orkweb/orkweb_security.log log4j.appender.security.MaxFileSize=5000KB log4j.appender.security.MaxBackupIndex=5 log4j.appender.security.layout=org.apache.log4j.PatternLayout log4j.appender.security.layout.ConversionPattern=%d{ISO8601} %c %5p ­ %m%n

### orkweb_audittrail.log ### log4j.logger.audittrail.net.sf.oreka=info, audittrail log4j.appender.audittrail=org.apache.log4j.RollingFileAppender log4j.appender.audittrail.File=/var/log/OrkWeb/orkweb_audittrail.log log4j.appender.audittrail.MaxFileSize=5000KB log4j.appender.audittrail.MaxBackupIndex=5 log4j.appender.audittrail.layout=org.apache.log4j.PatternLayout log4j.appender.audittrail.layout.ConversionPattern=%d{ISO8601} %c %5p ­ %m%n log4j.rootLogger=info, file log4j.logger.net.sf.oreka=info log4j.logger.net.sf.oreka.orktrack=info log4j.logger.org.hibernate=error log4j.logger.org.hibernate.SQL=off log4j.logger.org.apache.tapestry=info log4j.logger.tapestry=error log4j.logger.org.apache.hivemind=info log4j.logger.hivemind=error log4j.logger.org.logicalcobwebs.proxool=error log4j.logger.org.apache.catalina=error log4j.logger.uk.ltd.getahead=warn log4j.logger.com.sshtools=warn

8