Install and Configure Advanced Reporting with Jaspersoft 7.1.3

ccppmop1571
Complete the following steps to set up Advanced Reporting with Jaspersoft for
Clarity PPM
. Configure Jaspersoft to restrict email notifications to trusted domains. Configure a dedicated JasperReports server for scheduled reports.
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
Clarity 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.
ClarityApp Server
Dual 2.4 GHz Intel Xeon
RAM
: 8 GB
ClarityDB 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
    Clarity PPM
    is installed or upgraded.
  • Download the compatible Oracle JDK and Apache Tomcat software.
    • JDK 1.8.0_201 (8u201) (64-bit)
    • Apache Tomcat 8.5.43
  • 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.
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 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'
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
Use the table given below 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 Standalone
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 8.5.43 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-8.5.43
                                                                               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
                                                                                 
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, enter Yes.
Select No to use the same server as a report scheduler instance.
                                                                                   
  Database Details
Select Database Type
1. Oracle
2. SQL
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)
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>).
                                                                                  Confirm Your Configuration
Use these settings (y, n)
Allows you to validate the selections you made for installing Jaspersoft
Sample value: y
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-8.5.x\webapps\reportservice\WEB-INF
    and paste the files which are attached in this file. The same file can be used with Jaspersoft 7.1.3.
  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-8.5.x\webapps\reportservice\WEB-INF\ehcache_hibernate.xml
    D:\apache-tomcat-8.5.x\webapps\reportservice\WEB-INF\ehcache.xml
    D:\apache-tomcat-8.5.x\webapps\reportservice\WEB-INF\classes\ehcache_hibernate.xml
    D:\apache-tomcat-8.5.x\webapps\reportservice\WEB-INF\classes\ehcache.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-8.5.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
  • 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
Clarity 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
Clarity 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 Key Store File
To authenticate
Clarity PPM
and the JasperReports Server, 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 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 ClarityDatabase 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
    Clarity 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.
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
    Clarity 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
Clarity PPM
Services
Follow these steps:
  1. Log in to
    Clarity PPM
    System Administration.
  2. Under
    Home
    , click
    All Services
    .
  3. Select the checkboxes next to the
    Clarity PPM
    Application (app) and
    Clarity 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 Clarityusers 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
Clarity 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 the Clarityor ClarityJasper ISO.)
  2. Reference the Java executables in the
    PATH
    environment variable. The Clarity15.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.