Install Jaspersoft 7.8.0

ccppmop1592
This topic provides all the information you need to install Jaspersoft 7.8 for
Classic PPM
.
When you plan to install Jaspersoft 7.8, some of the key things you need to remember are:
  • You need to be on Clarity 15.9.1 and Jaspersoft 7.1.3 to upgrade to Jaspersoft 7.8.
  • Jaspersoft 7.8.0 includes an installation keystore. Create a backup of the installation keystore (<user.home.dir>/.jrsks & <user.home.dir>/.jrsksp) to ensure you can connect to the Jaspersoft database in case of any issues. You will not be able to access your data if you don't have a copy of the keystore files. If you are using a Windows server, the keystores are available under the C:\users\<user directory> directory.
  • Jaspersoft 7.8.0 now supports TCPS for the Oracle 19c database. Customers who wish to upgrade to Jaspersoft 7.8.0 and switch to TCPS would need to install Jaspersoft 7.8.0 on Oracle 19c and import content from their current Jaspersoft instance.
  • Jaspersoft 7.8.0 also supports Microsoft SQL Server 2017 and Microsoft SQL Server 2019.
  • Jaspersoft 7.8.0 supports PostgreSQL. You can only use PostgreSQL for Jaspersoft after
    Clarity
    (on-premise) officially supports PostgreSQL (expected in May 2021). You cannot install Jaspersoft on PostgreSQL and configure it to work with
    Clarity
    in scenarios where
    Clarity
    uses Oracle or MSSQL database. 
  • Jaspersoft 7.8.0 supports the Adopt Open JDK 11 and Tomcat 9.0.37.
  • Jaspersoft 7.8.0 requires you to install Chrome 85 or higher release on the server where you plan to install Jaspersoft.
  • When you export content from Jaspersoft 7.8.0, use the Legacy Key option to ensure you can import content on all existing Jaspersoft servers.
  • Jaspersoft 7.8 will not work on Internet Explorer. You can use the relevant versions of Chrome, Firefox, and Edge.
2
Advanced Reporting Architecture and Components
(On-Premise only)
To help you plan for a new installation or upgrade with Advanced Reporting, refer to the deployment architecture examples in the sizing guide for
Classic PPM
15.x. See
Installing and Upgrading
in the English edition of the documentation. The following diagram shows a typical configuration:
This diagram shows a typical three-node Jaspersoft cluster for
Clarity
This diagram shows a typical three-node Jaspersoft cluster for Clarity
For the best performance, we recommend the following minimum configuration:
  • 20 GB RAM for each JVM
  • 32 GB RAM for the OS
  • One (1) interactive node
  • One (1) scheduler node
For large deployments with over 1,000 simultaneous users, we recommend a three-node Jaspersoft cluster with one interactive node and two scheduler nodes.
High-Performance Specifications
The following section lists a robust setup for Windows Server 2012 for user-acceptance testing or high-performance environments that place a premium on reporting. The
Clarity
15.x SaaS platform uses similar specifications in a three-node clustered configuration.
Clarity
App Server
Dual 2.4 GHz Intel Xeon
RAM
: 8 GB
Clarity
DB Server
MS SQL 2012
8 Core 2.4 GHz Intel Xeon
RAM
: 100 GB
DWH/Jaspersoft Reports Server
MS SQL 2012
6 Core 2.4 GHz Intel Xeon
RAM
: 14 GB
Jaspersoft Tomcat Server
Dual 2.4 GHz Intel Xeon
RAM
: 8 GB (32 GB recommended)
JVM
: 20 GB per node
Review the Prerequisites
  • Verify that
    Classic PPM
    is installed or upgraded.
  • Download the compatible Oracle JDK and Apache Tomcat software.
    • AdoptOpenJDK 11.0.9.1+1
    • Apache Tomcat 9.0.37
  • Set JAVA_HOME and ensure that the correct Java executables are referenced in the PATH environment variable.
    For example: (Windows)
    set PATH=%JAVA_HOME%\bin;%PATH%
    (Linux)
    export PATH=$PATH:$JAVA_HOME/bin
  • If this is your second attempt at installation, before starting the install process, do the following:
    • Delete the Tomcat folder, if it exists. Extract the new content from the Tomcat zip file that you downloaded from the CA Download Center.
    • Delete the JasperReports Server Database/Schema and recreate it. For more information and sample queries for supported vendors, see Create a Jaspersoft Schema and Set Permissions.
    • (Recommended) Extract the installer into a new folder.
  • Jaspersoft 7.8.0 now supports TCPS for the Oracle 19c database. If you plan to use the Bundled JDK option, while configuring TCPS, you need to perform the following steps. These steps are critical because when the database administrators install Oracle on TCPS, they generate a private key. This key needs to be imported into AdoptOpenJDK 11.0.9.1+1.
    1. Navigate to the Java bin folder that you plan to use while installing Jaspersoft 7.8. A sample command is given below.
      cd jdk11.0.9.1+1/bin
    2. Use the following command to export the certificate.
      ./keytool -exportcert -keystore <keystore path> -storepass <keystore password> -storetype <keystore type> -alias <keystore alias> -file <location to export certificate/certificate name>
      A sample command is given below.
      ./keytool -exportcert -keystore </fs0/truststore.p12> -storepass <Dummy#1234> -storetype <PKCS12> -alias <clrt-i65702.dummy.test.net_testroot> -file </fs0/oracle78test.cer>
    3. Use the following command to import the certificate into the CA Certs directory.
      ./keytool -importcert -keystore <location of cacerts> -storepass <password of cacerts keystore> -alias <keystore alias> -file <location to exported certificate/certificate name>
      A sample command is given below:
      ./keytool -importcert -keystore <fs0/ca/jdks/jdk-11.0.9.1+1/lib/security/cacerts> -storepass <changeit> -alias <clrt-i65702.dummy.test.net_testroot> -file </fs0/oracle78test.cer>
    4. When prompted whether you trust this certificate, type yes and press Enter. You have now added the certificate into AdoptOpenJDK 11.0.9.1+1.
To avoid the
filename is too long
exception, unzip the installer into the root drive (for example, C:\jaspersoft or /fs0/).
Create the JasperReports Server Schema and Set Permissions
Complete the following steps to create a database user for the JasperReports Server.
Oracle
Follow these steps:
  1. Create a tablespace for the JasperReports Server.
    CREATE TABLESPACE "[JS User]_PPMJAS" DATAFILE '<ORACLE_BASE>\ORADATA\<SID>\PPM_JASPER_TS.DBF' SIZE 500M REUSE AUTOEXTEND ON NEXT 25M MAXSIZE 10G LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
  2. Create a database user and set the required permissions.
    CREATE USER [JS User] IDENTIFIED BY [JS Password] DEFAULT TABLESPACE [JS User]_PPMJAS TEMPORARY TABLESPACE TEMP; GRANT CONNECT, RESOURCE, CREATE SESSION TO [JS User]; GRANT UNLIMITED TABLESPACE, QUERY REWRITE TO [JS User];
SQL Server
Follow these steps:
  1. Create a database (for example, PPM_JASPERSOFT).
  2. Alter database ppm_jaspersoft to set arithabort on.
  3. Alter database ppm_jaspersoft to set ansi_nulls on.
  4. Alter database ppm_jaspersoft to set quoted_identifier on.
    IF (SELECT (CAST(LEFT(CAST(SERVERPROPERTY('ProductVersion') AS VARCHAR(20)), CHARINDEX('.', CAST(SERVERPROPERTY('ProductVersion') AS VARCHAR(20)), 1) - 1) AS INTEGER))) = 10 BEGIN exec sp_dbcmptlevel 'PPM_JASPERSOFT', @new_cmptlevel=100 END IF (SELECT (CAST(LEFT(CAST(SERVERPROPERTY('ProductVersion') AS VARCHAR(20)), CHARINDEX('.', CAST(SERVERPROPERTY('ProductVersion') AS VARCHAR(20)), 1) - 1) AS INTEGER))) = 11 BEGIN exec sp_dbcmptlevel 'PPM_JASPERSOFT', @new_cmptlevel=110 END IF NOT EXISTS (SELECT 'yes' FROM syslogins WHERE LOWER(name) = LOWER('PPM_JASPERSOFT') ) BEGIN exec sp_addlogin 'PPM_JASPERSOFT','my_password','PPM_JASPERSOFT','us_english' END
  5. Set the isolation level to read the committed snapshot.
    Make sure that the user can access the system views (such as syslockinfo, sysindexes).
    begin exec ('alter database PPM_JASPERSOFT set read_committed_snapshot on') exec ('grant VIEW SERVER STATE to PPM_JASPERSOFT') exec ('ALTER LOGIN PPM_JASPERSOFT WITH CHECK_POLICY=OFF') end USE PPM_JASPERSOFT
  6. The schema owner is referenced in the code when executing functions in SQL Server and is hard-coded to PPM_JASPERSOFT. The login name can be different.
    -- Schema owner is referenced in code when executing functions in MSSQL, -- so we intentionally hard-code it here to PPM_JASPERSOFT. Login name can differ. exec sp_grantdbaccess 'PPM_JASPERSOFT','PPM_JASPERSOFT' exec sp_defaultdb 'PPM_JASPERSOFT', 'PPM_JASPERSOFT' exec sp_addrolemember 'db_owner', 'PPM_JASPERSOFT'
PostgreSQL
Clarity
15.9.1 and higher releases now support the PostgreSQL database for Jaspersoft 7.8.0. Please review the Hardware and Software Compatibility guide to check the PostgreSQL version supported for this release.
If you are installing the PostgreSQL database, refer to the following knowledge base articles:
  • Installing PostgreSQL for Windows
  • Installing PostgreSQL for Linux
After you install the PostgreSQL database, see Setting Up the PostgreSQL Database for information on how to set up the database.
You are not ready to configure the database before installing Jaspersoft.
Follow these steps:
  1. Log in as the postgres user to the database server.
  2. Create a tablespace directory for Jaspersoft by using the following command. Ensure you copy the path of this directory. We will be using the path while creating a table space.
    -bash-4.2$ mkdir <directory name>
    A sample command is given below:
    -bash-4.2$ mkdir jasper_data
  3. Login as a Postgres DB user by using psql.
    -bash-4.2$ psql
  4. Create a role that will be used for installing Jaspersoft.
    create role <name> password <'password'> login nosuperuser nocreaterole nocreatedb connection limit -1;
    A sample command is given below:
    create role jasper password 'niku' login nosuperuser nocreaterole nocreatedb connection limit -1;
  5. Create a tablespace by using the tablespace directory we created previously.
    create tablespace <name> owner <role> location <location>;
    A sample command is given below:
    create tablespace jasper_data owner jasper location '/var/lib/pgsql/pgtablespace/jasper_data;
  6. Create the Jaspersoft database.
    create database <name> owner <role> tablespace <name> connection limit -1;
    A sample command is given below:
    create database jasper owner jasper tablespace jasper_data connection limit -1;
  7. Create a Jaspersoft schema and ensure that schema name matches the role name. The commands are given below
    -bash-4.2$ psql -d jasper
    create schema <name> authorization <role>;
    A sample command is given below:
    create schema jasper authorization jasper;
You are now ready to install Jaspersoft.
Install the JasperReports Server Software
Complete the following steps to install the JasperReports software on the server.
Follow these steps:
  1. Download the Jaspersoft zip file from CA Support:
    • Search on
      Clarity
      and locate the latest Jaspersoft download file.
    • The Jaspersoft file is often included as part of an ISO image file that you can download and mount or burn to a DVD. For example:
        CA BUSINESS INTELLIGENCE JASPER REPORTS SERVER 7.x FOR
      Clarity
      Clarity
      INSTALL MEDIA 15.x, DVD MASTER
        DVDXXXX.iso
  2. Save the ZIP file to a local directory.
  3. Extract the contents of the file to a new folder (for example, /opt/jasperreports for LINUX or C:\Jasperreports for Windows).
    To avoid the
    filename is too long
    exception, unzip the installer into the root drive (for example, C:\jaspersoft or /fs0/).
  4. Open a command prompt and run the following command:
    1. Linux:
      chmod u+x install.sh install.sh
      Windows:
      install.bat
  5. The installer will confirm if you are using Adopt JDK 11.0.9. Select 'y' to continue the installation.
  6. Use the following table to select relevant options during the installation process.
The table provides information to help you install Jaspersoft as the Primary Node of a Cluster.
Option
Explanation
Selection
Installation Type
1 Fresh Installation
Specifies that you want a new installation
Select 1
2 Upgrade
Specifies that you want to upgrade your existing installation
Apache Tomcat Directory
Enter Apache Tomcat 9.0.37 directory
Enter the location to the Apache Tomcat directory. If you don’t provide a path to the relevant directory, the installation will not proceed further.
Sample value: /home/primaryjsft/tomcat/apache-tomcat-9.0.37
Jaspersoft Web Application Details
Enter Jaspersoft Web App Name [report service]
Specifies the folder name where the JasperReports Server is deployed. In clustered environments, your entry should be in sync with the first instance and port number where the Jasper service needs to run
Sample value: Press Enter and the system will use the name “report service”
Enter Jaspersoft web app port
Specifies the port where the JaspersoftReports Server runs
Sample value: Press Enter to use port 8080
Email Configuration
Do you want to configure Email (y/n)
Press Y to configure the mail server. To skip configuration (you can set it up later) enter N.
Sample Value: Y - to set up your email server
Enter Mail Server Hostname
Specifies the hostname of the mail server
Sample Value: mail.localhost.com
Enter Mail Server Port
Specifies the port number of the mail server
Sample Value: 25
Enter Sender Email Protocol
Specifies the protocol that the mail server supports. The JaspersoftReports Server supports SMTP and SMTPS
Sample Value: SMTPS
Enter Sender Email Username
Specifies the user name of the mail sender
Sample Value: Reportadmin
Enter Sender Email Password
Specifies the password of the mail sender
Sample Value: [email protected]
Enter Sender Email Address
Specifies the mail address of the sender
Absolute Path to Chrome
Enter Absolute Path to Chrome
Specifies the path to the Google Chrome browser. Jaspersoft supports Google Chrome version 85 and higher.
Sample Value: /opt/google/chrome/google-chrome
Installation Mode - Standalone vs Cluster
Select Installation Mode
1. Standalone Mode
2. Cluster
Used to determine if you want to install on a single server or on a cluster.
Select 2
Select the Cluster Node
1. Primary
2. Additional - Web App Only Deploy
The Additional - Web App Only Deploy option deploys only the web application and uses the database schema associated with the primary node.
Select 1 to set up the primary server.
Do you need a dedicated Jaspersoft instance as a report scheduler instance?
1. Yes
2. No
If you do not want to have a separate scheduler instance, enter No.
If you want a separate scheduler instance, select Yes.
Select Yes because you typically would not use the primary cluster node as a report scheduler instance.
Do you want to make the current instance a report scheduler-only instance?
1. Yes
2. No
If you want to configure your primary node as a report scheduler only instance, select Yes else select No.
Select No because you do not want to configure your primary node as a report schedular the only instance.
Database Details
Select Database Type
1. Oracle
2. SQL
3. PostgreSQL
Allows you to select your database for Jaspersoft.
Select 1 for Oracle.
Database: SQL Server
MSSQL
SQL Server Hostname
Enter the Hostname of the server where SQL Server is installed (for example, HOSTNAME).
Do you want to use named instance?
Enter
Yes
if you are deploying on a MS SQLSERVER Named Instance. Enter
No
if you are deploying on a default instance with a static port.
Enter MSSQL Server Instance Name
Enter the named instance configured on MS SQLServer.
Jaspersoft Database Name
Enter the JasperReports Server database name (default=PPM_JASPERSOFT).
Jaspersoft Database Username
Enter the JasperReports Server user name (for example, PPM_JASPERSOFT).
Jaspersoft Database Password
Enter the JasperReports Server password. Only applicable for Oracle.
MSSQL Server Port Number
Enter the database port on which SQL Server runs (for example, 1433).
Jaspersoft Database Name
Enter the JasperReports Server database name (default=PPM_JASPERSOFT).
Jaspersoft Database Username
Enter the JasperReports Server user name (for example, PPM_JASPERSOFT).
Jaspersoft Database Password
Enter the JasperReports Server password.
Database: Oracle Standalone
Oracle Database Hostname
Hostname of the server where Oracle is installed (for example, localhost).
Oracle Database Port Number
Database port on which Oracle is running (for example, 1521).
Jaspersoft Database Username
JasperReports Server database user name (for example, PPM_JASPERSOFT).
Jaspersoft Database Password
JasperReports Server password.
Oracle SID Name
Oracle SID (for example, <ORACLESID>)
Oracle Cluster (RAC)
 Please refer to this article to troubleshoot the ORA-12504 issue you may encounter during installation. 
Oracle Database Hostname
Hostname of the server where Oracle is installed (for example, localhost or an IP address).
Oracle Database Port Number
Database port where Oracle runs (for example, 1521).
Jaspersoft Database Username
JasperReports Server database user name (for example, PPM_JASPERSOFT).
Jaspersoft Database Password
JasperReports Server password.
Oracle Service Name
Oracle service name (for example, <SERVICENAME>).
PostgreSQL
PostgreSQL Database Hostname
Hostname of the server where PostgreSQL is installed (for example, localhost or an IP address)
PostgreSQL Database Port Number
Database Port Number where PostgreSQL runs
Jaspersoft Database Name
Jaspersoft database name created in PostgreSQL
Jaspersoft Database Username
Jaspersoft database role
Jaspersoft Database Password
Jaspersoft database password
JDBC Protocol Type
Select JDBC Protocol Type
1. TCP
2. TCPS
Used to specify if you want to configure JDBC protocol. Select 1 for TCP and 2 for TCPS.
Sample Value: Select 2 for TCPS.
You will see the JDBC Protocol prompt for all supported Oracle releases. However, please note that Clarity officially supports TCPS only for Oracle 19c.
If you select 1 for TCP, you will be asked to confirm your configuration and Jaspersoft installation will be initiated.
Select TrustStore Location Type (TCPS) (Oracle 19c Only)
Select the Oracle TrustStore Location Type
1. Bundled with JDK
2. Custom Truststore File Path
Used to determine the TrustStore location type.
Sample Value: Select 1 for Bundled with JDK
Select TrustStore Location Type (TCPS) (Bundled with JDK) (Oracle 19c Only)
Enter TCPS Oracle Net SSL Version (optional)
Sample Value: 1.2
Clarity supports SSL 1.2
Enter TCPS Oracle Net SSL Ciper Suites (optional)
Used to enter the cipher suite used by your organization
Sample Value: Select the cipher being used in your organization
Enter TCPS Oracle Net SSL Server Dn Match (optional)
Sample Value: false
You will be asked to confirm your configuration and Jaspersoft installation will be initiated.
Select TrustStore Location Type (TCPS) (Custom Truststore File Path) (Oracle 19c Only)
Enter SSL TrustStore Type:
1. PKCS12
2. JKS
Used to select either PKCS12 or JKS Truststore
Sample Value: Select 1
You can select 2 if you want to use JKS TrustStore.
Enter SSL TrustStore Location
Sample Value PKCS12: /fs0/truststore.p12
Sample Value JKS: /fs0/truststore.jks
Enter SSL TrustStore Password
Enter TCPS Oracle Net SSL Version (optional)
Sample Value: 1.2
Clarity supports SSL 1.2
Confirm Your Configuration
Use these settings (y, n)
Allows you to validate the selections you made for installing Jaspersoft
Sample value: y
When you are setting up a cluster installation, ensure that you copy the keystores created for the primary instance to the <user.home> directory of the secondary instance.  The keystores are available at <user.home.dir>/.jrsks and <user.home.dir>/.jrsksp on the primary server. If you are using a Windows server, the keystores are available under C:\users\<user directory>.
The JasperReports Server can be deployed as a standalone application or in a cluster for high concurrency. Clustered JasperReports Server instances use thread-safe access to their private repository database. As a result, any number of JasperReports Server instances can share the same repository and present the same environment to users. When the JasperReports Server is deployed in a
cluster
, we advise you to dedicate one or more JasperReports Server instances in the cluster to process the execution of scheduled reports. The dedicated instances share the same repository. However, they are not part of the load balancer to serve web requests such as executing reports through the user interface or exploring data through ad hoc views. For a
standalone
deployment where only a single instance of the JasperReports Server is available, the instance processes report scheduling. The instance also serves normal web requests such as report execution through the user interface and exploring data through ad hoc views.
You must select the appropriate option during the installation to have the installer make the instance either a scheduler or a non-scheduler instance. You only see this option when you select
Yes
in the previous step. As previously noted, all of the scheduler nodes should be removed from the load balancer configuration. When you do this, the web requests are not served by scheduler nodes. The only purpose of scheduler nodes is to run scheduled reports.
You can select
Standalone
mode in case you do not want to use Cluster installation. You can then use the table given above to choose the options that are relevant to your installation.
When you want to install the secondary node for a cluster, select
Additional - Web App Only Deploy
and follow the relevant prompts.
Configure Clustering
In a clustered setup of the Jaspersoft Server, a distributed cache is useful and you want these Jaspersoft Servers to share the data in the cache. You want the other Jaspersoft Servers to know if elements from the cache have been changed by one of the processes. To provide cache replication across Jaspersoft Server nodes,
EhCache
is used. EhCache holds a local copy of the data, and replication messages (adding elements, removing, and so forth) are sent from one Jaspersoft Server node to the others when a modification in the cache occurs.
The Jaspersoft Server Ehcache implementation uses the following two mechanisms for replicating a cache across multiple nodes:
RMI Based Cache Replication:
Ehcache provides replicated caching using RMI. To set up RMI replicated caching, do the following:
  1. Configure the CacheManager with a PeerProvider and a CacheManagerPeerListener.
  2. For each cache that will be replicated, add one of the RMI cache event listener types to propagate messages.
  3. (Optional) Configure a cache to bootstrap from other caches in the cluster.
If your infrastructure does not support multi-cast, you can use JMS replication to ensure cache replication between multiple nodes.
JMS Based Cache Replication:
JMS can be used as the underlying mechanism for replication operations in Ehcache. The Ehcache jmsreplication module lets enterprises with a message queue investment leverage it for caching. Replication between cache nodes using a replication topic is provided, pushing of data directly to cache nodes from external topic publishers, and a JMSCacheLoader, which sends cache load requests to a queue.
Multicasting and Cache Distributing over RMI
Multicast is a method of sending IP packets to a group of interested receivers. These packets are only sent to the members of a multicast group with the help of a multicast router. A multicast group is assigned Class D addresses (224.0.0.0 - 239.255.255.255). The first 4 bits of a multicast address should be 1110 and the remaining 28 bits represent different groups.
All of the Jaspersoft Server nodes should be in the same network subnet to enable multicasting.
In some cases, Linux distributions do not have multicast enabled by default and the /etc/hosts file does not include the IP address that is associated with the server hostname. As a result, you may encounter the
hostname associated with the localhost in /etc/hosts
error. Associate the hostname in /etc/hosts with the IP address that is set to the server network interface or to the external static NAT IP address of the server.
Verify that the /etc/hosts has the IP address together with the IP 127.0.0.1 and does not contain the entry for loopback address 127.0.1.1.
  $ cat /etc/hosts
127.0.0.1 localhosthost.localdomain localhost
Configure Multicasting (Linux)
Follow these steps:
  1. Enable multicast on the eth0 interface.
    1. Log in as a root user on all the instances in the cluster where JasperReports Server is installed.
    2. Run the following command to enable multicasting on eth0:
      $ /sbin/ifconfig eth0 multicast
      All the instances should be in the same network subnet.
    3. Run the following command to verify that your network interface supports multicast:
      $ /sbin/ifconfig - a
      The Multicast attribute is present in the fourth line of the eth0 properties only if the kernel complies with the multicast support.
  2. To configure the map network interface to send multicast traffic, add a default route for multicast traffic to the specific NIC. For example, the following command allows eth0 to send multicast traffic:
    $ route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
    To check if multicast routing is configured, run the following command:
    $ /sbin/route - n
  3. Run the following command to display the multicast group membership information:
    netstat - g
    Once the route add command is run on all servers, ping the multicast IP with the following command:
    Ping -c10
    "multicast address IP, which is generally 224.0.0.1 (which displays All Systems on this Subnet)"
    Ping on multicast address may not be enabled in a few operating systems. In such scenarios, you should run the command
    echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
All the IP addresses that are available in the current configured multicast environment appear.
Configure Multicasting (Windows)
Reference the following Microsoft TechNet articles and learn how to set up multicast on Windows:
Configure Cache Distribution over RMI on JasperReport Servers
Follow these steps:
  1. Navigate to
    D:\apache-tomcat-x.x.x\webapps\reportservice\WEB-INF
    and paste the files which are attached in this file.
  2. Windows explorer will mention that you are trying to replace files. Proceed with the replacement
  3. When you get a multicast address from your network team open the following four files:
    D:\apache-tomcat-9.x.x\webapps\reportservice\WEB-INF\ehcache_hibernate.xml
    D:\apache-tomcat-9.x.x\webapps\reportservice\WEB-INF\ehcache.xml
    D:\apache-tomcat-9.x.x\webapps\reportservice\WEB-INF\classes\ehcache_hibernate.xml
  4. Edit the following tags (in red boxes) to incorporate the multicast address and port provided by the network team.
    image2018-7-19 9:54:58.png
  5. Verify that the 40011 and 40012 cache replication ports are open on the network end. You can change them to any specific ports which are deemed open by the network team. Make any changes in all members of the cluster.
  6. The primary instance has a page limit of 500 by default. To increase that to 1000, perform the following substeps:
    1. Navigate to the following directory:
      D:\apache-tomcat-9.x.x\webapps\reportservice\WEB-INF\classes\
    2. Edit the
      jasperreports.properties
      file.
    3. Search for the
      net.sf.jasperreports.governor.max.pages
      property.
    4. Change its value to
      1000
      .
  7. After completing all your configuration changes, start services on all the instances.
Configure Cache Distribution with JMS on JasperReport Servers
Two open-source message queues are available: Open MQ and Active MQ. This example uses Active MQ.
Follow these steps:
  1. Use these steps to configure Active MQ:
    1. Set up Active MQ by downloading the Active MQ server: Apache ActiveMQ. We recommend that you use Active MQ 5.5.10 (apache-activemq-5.5.10).
    2. Extract Active MQ.
    3. Go to the following path: apache-activemq-<x.x.x>-incubator\bin
    4. Log in using the admin credentials for Active MQ server.
      The default port for Active MQ is 61616. You can access the ApacheMQ admin panel through port 8161 by using an /admin URL similar to the following:
      URL
      : http://<activemq-machine-name>:8161/admin
      Login Username
      : admin
      Login Password
      : admin
  2. Stop the Jaspersoft Tomcat server.
  3. Go to the root drive of the installer (C:\jaspersoft or /fs0/).
  4. Go to the folder: <jaspersoft-installer-folder>\overlay\ehcache\jms
  5. Copy the WEB-INF folder to <tomcat>/webapps/<jaspersoftwebcontext-folder>. When the operating system asks you if it can override the existing files, click Yes.
  6. Go to: <tomcat>/webapps/<jaspersoftwebcontext-folder>/WEB-INF.
  7. Open the file: ehcache_hibernate.xml in edit mode.
  8. Search for the text: providerURL=tcp://localhost:61616. When found, replace the localhost with the actual IP or hostname of the ActiveMQ server.
  9. Go to: <tomcat>/webapps/<jaspersoftwebcontext-folder>/WEB-INF/classes.
  10. Open the file: ehcache_hibernate.xml in edit mode.
  11. Search for the text: providerURL=tcp://localhost:61616. When found, replace the localhost with the actual IP or hostname of the ActiveMQ server.
  12. Repeat the steps for all of the Jaspersoft instances that are available in the cluster.
  13. Before you start Jaspersoft Tomcat, do the following:
  • Delete the Tomcat temp directory.
  • Delete the work/Catalina/localhost directory.
If you use a standalone ActiveMQ server, there is a high possibility of failure. Hence, we recommend you create a cluster of ActiveMQ servers to support cache high availability. To learn more about setting up an ActiveMQ cluster, see Active MQ Cluster with Failover Protocol.
Verify the JasperReports Server Installation
Complete the following steps to verify that the installation was successful.
Follow these steps:
  1. Start the JasperReports Server if it has not already started.
  2. Go to the Jaspersoft Tomcat bin directory (<Jaspersoft-Tomcat-Root>/bin), and run the following command:
    Linux:
    chmod u+x ./startup.sh ./startup.sh
    Windows:
    startup.bat
  3. Open
    http://<domain_name>:<portnumber>/<jasperwebcontext>/
    .
  4. Verify that you can open the JasperReports Server login page.
  5. Log in to the JasperReports Server using the superuser credentials.
  6. Review the install.log for any errors.
    This file is available in the folder where you unzipped the contents of the JasperReports Server installation file.
During the installation, the Jaspersoft license file is copied to the installation directory and appropriate user folder automatically.
JasperReports Server Post-Installation Recommendations
  • Create a backup of the installation keystore (<user.home.dir>/.jrsks & <user.home.dir>/.jrsksp) to ensure you can connect to the Jaspersoft database in case of any issues
    .
    You will not be able to access your data if you don't have a copy of the keystore files.  If you are using a Windows server, the keystores are available under C:\<users>\user.
  • If you use Oracle, run the following query after the JasperReports Server installation to improve the overall performance of the system.
exec DBMS_STATS.GATHER_SCHEMA_STATS (ownname => USER, degree => DBMS_STATS.AUTO_DEGREE, estimate_percent => 100, cascade => true, method_opt=> 'FOR ALL COLUMNS SIZE 1');
  We recommend that you run this query frequently.
  • The Output to Host File System option saves the report output to a specified folder on the JasperReports Server host server. This option is disabled by default. For information about enabling this option, see the Jaspersoft documentation.
  • The governor limit on the JasperReports Server database connection has a timeout set to 15 minutes (900000 milliseconds). Report queries running longer than 15 minutes close and an error appears indicating the timeout. You can change the setting in the following location:
    webapps/<jasperwebcontext>/WEB-INF/classes/jasperreports.properties
    net.sf.jasperreports.governor.timeout.enabled= true
    net.sf.jasperreports.governor.timeout=900000
    For better performance and to relieve stress on the database, do not change this setting.
  • The governor limit on the JasperReports Server pages is set to 500. This limit applies to all output formats. You can change this setting in the following location:
    <tomcatDirectory>/webapps/<jasperwebcontext>/WEB-INF/classes/jasperreport.properties
    net.sf.jasperreports.governor.max.pages.enabled=true
    net.sf.jasperreports.governor.max.pages=500
    Setting this limit requires a restart of the JasperReports Server.
JasperReports Server Post-Installation Configuration
After you complete and verify the JasperReports Server installation, complete the following steps to configure the JasperReports Server to work with
Classic PPM
. The Advanced Reporting content includes domains for use with the data warehouse.
Configure the JasperReports Server Properties
Set the server properties for the JasperReports Server in
Classic PPM
System Administration (CSA).
Follow these steps:
  1. Log in to CSA. The default login URL for CSA is
    http://<hostname>:8090/niku/app
    .
  2. Click
    Servers
    in the left navigation pane, and click the name of the local server in the list.
  3. With the
    Properties
    tab selected, click the
    Reporting
    subtab.
  4. In the
    Report Server: Jaspersoft
    section, complete the following fields:
    • Vendor:
      Specifies the report vendor. For this section, only Jaspersoft is available.
    • Status:
      Indicates whether the JasperReports Server is available. If the server status is unavailable either because it is down, the URL is incorrect, or there is a network issue, provide a valid Web URL for the JasperReports Server.
    • Web URL:
      Specifies the web URL for the JasperReports Server (for example,
      http://<jaspersoft-hostname>:8080/<jasperwebcontext>
      ).
    • User:
      Specifies the JasperReports Server user name who performs system tasks that require administrator access. The default user is ppmjasperadmin. You can change the default user name before you import Advanced Reporting content. The import creates the user.
      Do not
      change the user name after you import the Advanced Reporting content.
    • Database ID:
      Not applicable.
    • Organization Name:
      Specifies the organization name (tenant name) that is created on the JasperReports Server.
    • Organization ID:
      Specifies the organization ID (tenant ID) that is created on the JasperReports Server.
    Note:
    If the Report Server: Jaspersoft section is not available, configure the following tag in the <clarityInstallFolder>/properties.xml file:
    <reportServer id="jaspersoft" webUrl="http://<serverName>:<portnumber>/<jaspersoftwebcontext>" context="/<jaspersoftwebcontext>" home="" serviceUrl="http://<serverName>:<portnumber>" volumeName="" username="ppmJasperAdmin" vendor="jaspersoft" databaseId="Niku" jndiName="jdbc/clarity" dwJndiName="jdbc/dwh" orgName="<orgname>" orgId="<orgID>" />
  5. Click Save.
Generate the Integration Key Store File
To authenticate
Classic PPM
and the JasperReports Server, the administrator needs to generate a trusted key store for each organization.
If you are upgrading your product release, use the following procedure to regenerate the keys, and copy the key store files.
Follow these steps:
  1. Go to <clarity_home>/bin.
  2. Run the following command to generate a key store from CSA:
    admin jaspersoft keystore
    To specify the key and password, enter the following command:
    admin jaspersoft keystore [-key <key> -password <password>]
    This command generates the following files in <install>/config/ and <install>/META-INF/reporting/store:
    • <orgname>.jks (key store file)
    • <orgname>.properties (information about the key)
  3. Copy these files to <Tomcat>/webapps/<jasperwebcontext>/WEB-INF/config where Jaspersoft is installed.
    Example: <Tomcat>/webapps/reportservice/WEB-INF/config
    For clustered environments, copy these files in the same location on each of the nodes in the cluster.
  4. Start the Tomcat service where the JasperReports Server is deployed.
    The Advanced Reporting content cannot be imported without starting the reporting service.
  5. (Optional) Repeat the steps to regenerate the key or change the organization.
  6. Complete the previous steps successfully to ensure that the import of the Advanced Reporting content does not fail.
Execute the Installation Commands
Before you run the installation commands, verify that you have completed the following tasks:
  • Data Warehouse status is set to Available. To confirm, refer to the Status field in the Data Warehouse section of CSA.
  • The Data Warehouse database link is created. To confirm, refer to the
    Clarity
    Database Link field in the Data Warehouse section of CSA.
  • The Organization Name and Web URL are defined. To confirm, refer to the Organization Name and Web URL fields in the Reporting section of CSA.
Follow these steps:
  1. Open a command prompt and navigate to the
    Classic PPM
    runtime bin directory.
  2. Run the following command:
    admin content csk
    The installation process begins and information displays on the screen. The information is captured and stored in the admin.log file that is located in the logs directory. The output files are stored in the logs/content/xog/csk directory.
  3. Run the following command using the superuser credentials to import the Advanced Reporting content:
    admin content-jaspersoft csk -userName superuser -password <password>
  4. Review the screen output and the logs for important information after the installation completes.
If you have used the TCPS protocol option while installing Jaspersoft, you need to perform the following additional steps:
  1. Create a copy of the PKCS12 or JKS truststore that you used while installing Jaspersoft and copy it to the <Tomcat>/webapps/<jasperwebcontext>/WEB-INF/config/tcps-truststores folder.
  2. If you have used the Bundled JDK option for installation, please copy and place the relevant keystore to the <Tomcat>/webapps/<jasperwebcontext>/WEB-INF/config/tcps-truststores folder.
  3. Navigate to <clarity_home>/bin and run the following command:
    ./admin jaspersoft secureDBParams add -isCustom true -fileName <name of truststore> -fileType <truststore type (.p12 or.jks)> -password <password> -sslCipherSuites <ciphername used while installing Jaspersoft> -sslVersion 1.2 -sslServerDNMatch false
    A sample command is given below:
    ./admin jaspersoft secureDBParams add -isCustom true -fileName truststore.p12 -fileType PKCS12 -password Dummy#1234 -sslCipherSuites TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 -sslVersion 1.2 -sslServerDNMatch false
  4. You can also use the following command to view the configuration of your server.
    ./admin jaspersoft secureDBParams list
  5. You can also use the following command to delete the configuration of your server.
    ./admin jaspersoft secureDBParams remove
Configure Users for Advanced Reporting
To set up Advanced Reporting with Jaspersoft, configure users for Advanced Reporting.
Follow these steps:
  1. Assign the required Advanced Reporting access rights to the report users. See
    Advanced Reporting Access Rights
    .
  2. Run the Create and Update Jaspersoft Users job to synchronize the
    Classic PPM
    users with assigned access rights to their corresponding Jaspersoft users and roles.
The PMO Accelerator add-in includes additional roles (CSK roles) that set permissions for repository items (such as reports and domains). To configure users for CSK roles, see Advanced Reporting Roles and Permissions.
Restart the
Classic PPM
Services
Follow these steps:
  1. Log in to
    Classic PPM
    System Administration.
  2. Under
    Home
    , click
    All Services
    .
  3. Select the checkboxes next to the
    Classic PPM
    Application (app) and
    Classic PPM
    Background (bg) services.
  4. Click
    Start
    .
Run the Data Warehouse Jobs
Always run the jobs in order as listed.
Follow these steps:
  1. Run the Create and Update Jaspersoft Users job
    : This job synchronizes
    Clarity
    users with assigned access rights to their corresponding Jaspersoft users and roles.
  2. Run the Time Slicing job
    : This job splits time-varying data into a relational format.
  3. Run the Load Data Warehouse job
    : This ETL job extracts the data from the database, transforms the data, and loads the data into the data warehouse. This job also updates the domains.
  4. Decide which data to include
    : Open the properties for any custom object or attribute that you want to include and select the
    Include in the Data Warehouse
    option. This option must be selected for custom objects or attributes to be populated in the data warehouse. Run the Load Data Warehouse job again. Schedule this job to run in full and incremental modes with the other jobs according to a strategy that you define. See the important note below.
  5. Run the Load Data Warehouse Access Rights job:
    This job loads the access privileges for resources and investments from the database to the data warehouse. This job is initially disabled. Enable this job before you run it.
  • After installation, to populate the data warehouse, always run the Load Data Warehouse job with the
    Full Load
    option selected. The first run of this job can take a substantial amount of time.
  • The following events require you to run the Load Data Warehouse job again; however, you can run it in
    incremental
    mode:
    • Deleting an attribute or clearing the Include in the Data Warehouse option for the attribute in
      Clarity
      Studio.
    • Changing the data type of an attribute
  • The
    following events require you to run the Load Data Warehouse job with the
    Full Load
    option selected again
    :
    • Adding a language to the data warehouse
    • Changing a timeslice date to include a larger timeframe.
When the Load Data Warehouse and Load Data Warehouse Access Rights jobs run, they write standard messages to the jobs logs and detailed messages to the data warehouse logs. The default data warehouse log files are bg-dwh.log and bg-ca.log. To review the detailed data warehouse log messages, navigate to the data warehouse logs (under the standard Jobs logs) in
Classic PPM
System Administration. You can enable more logging by changing the Kettle Log Level. Click Servers, Logs, Edit Configuration. Use detailed messages to monitor job progress and to analyze data warehouse load failures.
Configure Jaspersoft as a Windows Service
  1. Download Tomcat 8 from Tomcat Website https://tomcat.apache.org/download-80.cgi. (This will not work if you use the TOMCAT provided with
    Clarity
    Jasper ISO.)
  2. Reference the Java executables in the
    PATH
    environment variable. The
    Clarity
    15.5 application and earlier uses Java 8, 15.5.1 and higher uses Java 11, but Jaspersoft for all releases still uses Java 8.
  3. Navigate to the
    bin
    folder inside the
    Tomcat
    folder. For example, navigate to
    %TOMCAT_HOME%\bin
    using command prompt.
  4. To create the service, enter the following command:
        service install <name_of_your_reporting_service>
    For example:
      service install JasperReports
  5. Enter the following command in the same directory:
      tomcat8w.exe //ES//JasperReports
    image2018-10-26_12-2-56.png
  6. In the resulting Apache Tomcat 8.5 JasperServer Properties window, click the
    Java
    tab.
  7. To edit the JVM configuration, add the following JVM parameters under the
    Java Options
    section:
     -XX:+UseConcMarkSweepGC
    -XX:+CMSClassUnloadingEnabled
    -XX:MetaspaceSize=256m
    -Duser.home=C:\Users\Administrator
    The first line (
    -XX:+UseConcMarkSweepGC
    ) determines the Java garbage collector method for Jaspersoft. The last line refers to the
    home
    folder of the user account for the user who installed Jaspersoft.
    image2018-10-26_12-4-44.png
  8. Specify values for
    Initial Memory Pool
    and
    Maximum Memory Pool
    . The value for
    Thread stack size
    remains at 2048 KB.
    image2018-10-26_12-7-2.png
  9. Apply your changes.
  10. Launch the service from Windows services console.
Restart the JasperReports Server Tomcat Services
Complete the following steps to stop or start JasperReports Server.
Follow these steps:
  1. Navigate to the <tomcathome>/bin directory.
  2. To stop, run one of the following files:
    • shutdown.sh (Linux)
    • shutdown.bat (Windows)
  3. To restart, run one of the following files:
    • startup.sh (Linux)
    • startup.bat (Windows)
Uninstall JasperReports Server
Follow these steps:
  1. Stop the Tomcat service where the JasperReports Server is deployed.
  2. Rename the existing
    <jasperwebcontext>
    folder.
  3. Back up the JasperReports Server database.
  4. Delete the JasperReports Server database from the database server.