NexJ Logo

Deploying Ad Hoc Reports for NexJ CRM

Ad Hoc Reports are run-time configurable reports that users generate in NexJ CRM.

Ad Hoc Reports use a Business Intelligence (BI) model, rather than the operational business model, to optimize the performance of reports. The BI model contains the classes and attributes that you report on. Ad Hoc Reports also require JasperReports Server, which is a separate reporting environment containing a reporting database that reports are generated from. Data in the reporting database is updated by the NexJ synchronization engine, which synchronizes data from your operational databases to the reporting database.

Overview of deployment process

The deployment process involves both deployment and developer tasks. To deploy Ad Hoc Reports:

Enable BI and Ad Hoc Reports and functionality

In NexJ Studio, create a Business Intelligence (BI) model. Then create a reporting environment and a reporting database. After the BI model and
reporting environment are created, use NexJ Admin Console to activate the Ad Hoc Reports workspace, assign privileges to users, and set up synchronization between the reporting and operational database.

Info

Creating the BI model is a developer task and must be performed in NexJ Studio by a person with access to the model.

Deploy Ad Hoc Reports

Deploy and configure JasperReports Server on your application server. You can deploy JasperReports Server on IBM WebSphere Application Server or NexJ Server.

Configure Ad Hoc Reports

After deploying ad hoc reports, import the catalog.zip BI catalog, test the Business Intelligence (BI) data source connection, and change the default superuser password.

Enabling Ad Hoc Reports and BI functionality

Ad Hoc Reports functionality is disabled by default to ensure that the BI model and reporting environment are configured beforehand. After the BI model and the reporting environment are created, the Ad Hoc Reports workspace can be activated. The reporting database will then be populated using the NexJ synchronization engine.

To use Ad Hoc Reports and Business Intelligence (BI) functionality in NexJ CRM, you must complete the following steps:

  1. Using NexJ Studio, set up the BI model.
    For more information about the BI model, see Developing BI models.
  2. Using NexJ Studio, create a new reporting database. For more information, see Creating the reporting database.
  3. Using NexJ Studio, set up the reporting environment. For more information, see Setting up the reporting environment.
  4. Using NexJ Admin Console, turn on the Ad Hoc Reports workspace for NexJ CRM users. For more information, see Turning on the Ad Hoc Reports workspace.
  5. Set up appropriate privileges for NexJ CRM users. For more information, see Setting user privileges for Ad Hoc Reports.
  6. Set up synchronization between the reporting database and the operational database, including configuring pool pausing. For more information, see Turning on BI data synchronization and Disabling pool pausing.

As the BI model is developed, the reporting database must be kept up-to-date. For more information, see Maintaining the reporting database.

Creating the reporting database

Use a dedicated reporting environment to offload the heavy load which is placed on a database by queries for report generation or data analysis.

Standard day to day operations of NexJ CRM should not be bogged down if generating a large report, or if the system needs to generate many reports during a processing window.

With the data residing in separate databases, real-time data synchronization becomes important. Based on some real world use cases, it may be sufficient that data within the reporting environment is a day or even a week behind the operational system. However there are many more real world use cases that need the data to be reportable instantly.

To create the reporting database:

  1. In NexJ Studio, in the Deployment layer, in the Environments tab, open the .connections or .environment file for your server.
  2. In the Data Source Connections tab, add a connection to the BI_1_BI_Database data source. Configure the connection to use a different database for storing BI data.
  3. In NexJ Studio, click the drop-down arrow next to the Run Tool button and select Database Schema Tool.
  4. In the Server and Connections section, select the files for the server.
  5. In the Command field, select setup.
  6. In the Data Source field, select BI_1_BI_Database.
  7. Complete other fields in the dialog as appropriate and click Run. This generates the <model>_BI_1_BI_Database_setup.sql file in the folder specified in the Output Directory field.
  8. Using your database management software, execute the <model>_BI_1_BI_Database_setup.sql script to create the new database. Verify that the script worked by looking for the new database added by the script.

After you create the reporting database, you must setup the environment by recreating all data sources.

Setting up the reporting environment

Set up your reporting environment by recreating all data sources. All data sources related to your model will be recreated together with the BI data source to ensure a clean setup of the reporting environment.

You must create a reporting database before you recreate the BI data source.

To set up the reporting environment:

  1. Click the drop-down arrow next to the Run Tool button and select Data Load Tool.
  2. In the Server and Connections section, select the files for the server.
  3. In the Command field, select recreate.
  4. In the Data Source field, select the data source to recreate.
    • To recreate all data sources, select * and ensure that BI_1_BI_Database is present in the list of data sources.
    • To recreate only the BI data source, select BI_1_BI_Database.
  5. Complete other fields in the dialog as appropriate and click Run. All data sources are recreated. Verify that new tables have been added to the reporting database. There should be several BI_1_* tables corresponding to the BI classes specified in the BI context.
  6. Validate and deploy the updated model.

Turning on the Ad Hoc Reports workspace

The Ad Hoc Reports workspace is not available to NexJ CRM users by default.

To make the Ad Hoc Reports workspace available, perform the following steps.

  1. In NexJ Admin Console, navigate to the Personalization page.
  2. In the Users area, select the user or users for whom you want to enable the workspace. You can search for an individual user, a user type, or select the System option to enable the workspace for all users.
  3. Click the User Options tab. In the top left corner of the User Options tab, click the Select button . The Select Option dialog opens.
  4. Add the Enable Ad Hoc Reports option and click OK.

Setting user privileges for Ad Hoc Reports

Grant the following privileges to individual users or user groups to enable Ad Hoc Reports functionality using TIBCO JasperReports Server domains.

Developers generate JasperReports Server domains. For more information about generating a domain from a BI model for Ad Hoc Reports, see the NexJ Studio Developer Guide.

A user of a domain has read access to the domain's folder and the Report folder inside. This enables users to view and run reports in their domains. Users have the ability to export (download) reports to their computer but may not save reports in the system.

A manager of a domain has read, write, and delete access to their domain's folder and all items inside. This enables them to create and save ad hoc views for their domain. It also allows them to create and save reports from their ad hoc views.

Info

For instructions on how to grant privileges to individual users or user groups, see Configuring users and user access.


Domain privileges

Domain namePrivilegesPrivilege Descriptions
Activities
  • AdHocActivityManager
  • AdHocActivityUser
  • Assign the manager role within the Activity domain of the AdHoc reporting
    server.
  • Assign the user role within the Activity domain of the AdHoc reporting server.
Business Processes
  • AdHocBusinessProcessManager
  • AdHocBusinessProcessUser
  • Assign the manager role within the BusinessProcess domain of the AdHoc reporting server.
  • Assign the user role within the BusinessProcess domain of the AdHoc reporting server.
Campaign
Participants
  • AdHocCampaignParticipantManager
  • AdHocCampaignParticipantUser
  • Assign the manager role within the CampaignParticipant domain of the AdHoc reporting server.
  • Assign the user role within the CampaignParticipant domain of the AdHoc reporting server.
Campaigns
  • AdHocCampaignManager
  • AdHocCampaignUser
  • Assign the manager role within the Campaign domain of the AdHoc reporting server.
  • Assign the user role within the Campaign domain of the AdHoc reporting server.
Categories
  • AdHocCategoryManager
  • AdHocCategoryUser
  • Assign the manager role within the Category domain of the AdHoc reporting server.
  • Assign the user role within the Category domain of the AdHoc reporting server.
Companies
  • AdHocCompanyManager
  • AdHocCompanyUse
  • Assign the manager role within the Company domain of the AdHoc reporting server.
  • Assign the user role within the Company domain of the AdHoc reporting server.
Contacts
  • AdHocContactManager
  • AdHocContactUser
  • Assign the manager role within the Contact domain of the AdHoc reporting server.
  • Assign the user role within the Contact domain of the AdHoc reporting server.
Coverage Teams
  • AdHocCoverageTeamManager
  • AdHocCoverageTeamUser
  • Assign the manager role within the CoverageTeam domain of the AdHoc reporting server.
  • Assign the user role within the CoverageTeam domain of the AdHoc reporting server.
Households
  • AdHocHouseholdManager
  • AdHocHouseholdUser
  • Assign the manager role within the Household domain of the AdHoc reporting server.
  • Assign the user role within the Household domain of the AdHoc reporting server.
Inbound Calls
  • AdHocInboundCallManager
  • AdHocInboundCallUser
  • Assign the manager role within the InboundCall domain of the AdHoc reporting server.
  • Assign the user role within the InboundCall domain of the AdHoc reporting server.
Opportunities
  • AdHocOpportunityManager
  • AdHocOpportunityUs
  • Assign the manager role within the Opportunities domain of the AdHoc reporting server.
  • Assign the user role within the Opportunities domain of the AdHoc reporting server.
Roadshows
  • AdHocRoadshowManager
  • AdHocRoadshowUser
  • Assign the manager role within the Roadshow domain of the AdHoc reporting server.
  • Assign the user role within the Roadshow domain of the AdHoc reporting server.
Service Models
  • AdHocServiceModelManager
  • AdHocServiceModelUser
  • Assign the manager role within the ServiceModel domain of the AdHoc reporting server.
  • Assign the user role within the ServiceModel domain of the AdHoc reporting server.
SLM
  • AdHocSLMManager
  • AdHocSLMUser
  • Assign the manager role within the SLM domain of the AdHoc reporting server.
  • Assign the user role within the SLM domain of the AdHoc reporting server.
User Fields
  • AdHocUserFieldManager
  • AdHocUserFieldUser
  • Assign the manager role within the UserField domain of the AdHoc reporting server.
  • Assign the user role within the UserField domain of the AdHoc reporting server
Users
  • AdHocUserManager
  • AdHocUserUser
  • Assign the manager role within the User domain of the AdHoc reporting server.
  • Assign the user role within the User domain of the AdHoc reporting server.

There are some additional privileges:

Additional Privileges

Privilege NamePrivilege Descriptions
AdHocAdministratorAdminister the AdHoc Reporting server.
AdHocManagerAllows access to the Manage tab. Must be used in conjunction with the above AdHoc<Domain>Manager privileges.
AdHocStaticReportsManagerAssign the manager role for static reports.
AdHocStaticReportsUserAssign the user role for static reports.

Turning on BI data synchronization

The reporting database is populated using the NexJ synchronization engine.

Before any user can use Ad Hoc Reports, a user with the BIWrite privilege must enable synchronization between the operational and reporting databases. Also, the reporting database needs to be activated and seeded with the data in the operational database.

After a target for the server is created, the real-time synchronization engine starts, so any new data or changes to existing data will be sent to the reporting database. However, the reporting database is not automatically populated with all of the existing data. To populate the database, you need to send a snapshot of the operational database to the reporting database.

Note: If you make changes that affect the source data for BI synchronization in the existing database without using the model, you must perform a bulk BI synchronization of that data.

To enable BI data synchronization:

  1. In NexJ Admin Console, navigate to the Synchronization page.
  2. In the Targets area, select Outbound sync for 'BI'. Perform a full synchronization to all links or synchronize to selected links. If you are performing an initial setup, send a snapshot to all links.
    • To send a snapshot of all the links, click the Send snapshot to the external system (All links) button , located on top of the Targets area.
    • To send a snapshot of just one of the links, select the link in the Links area below the Targets area. Click the Send snapshot to the external system (Selected link only) button , located on top of the Links area. Repeat for other links if required.

Check the Audit Trail tab to see the synchronization events. After each link completes its task, information will appear in the Audit Log.

Disabling pool pausing

When performing a bulk sync, it is possible for an instance of a class to be created and synchronized within real time.

However, when the bulk sync reaches this instance and attempts to create it, an SQL failure occurs because the bulk sync process is trying to duplicate existing data. To prevent this situation, pool pausing is used to pause real-time synchronization during a bulk sync. Pool pausing is enabled by default but can be disabled, if required.

Note

Disabling pool pausing may produce unexpected results. Work with your NexJ service representative to ensure you are using this setting correctly.

To disable pool pausing:

1. In NexJ Admin Console, navigate to the Synchronization page.
2. In the Targets area, select the Outbound sync for 'BI' target. Properties of the target appear in the
Details area.
3. In the Details area, click the Edit button. The Edit Target Class dialog appears.
4. Disable the Pause real-time synchronization while sending snapshot option. Click OK.

Deploying Ad Hoc Reports for NexJ CRM

Before you can use TIBCO JasperReports Server for Ad Hoc Reports, you need to deploy it on IBM WebSphere Application Server or on NexJ Server. Instead of using install scripts, you can choose to use a plug-in to NexJ Studio to install JasperReports Server on NexJ Server. Ad Hoc Reports may be provided by either JasperReports Server version 5.6.1 or 6.2.0. However, performance, stability, and support considerations favour a deployment of the latest version.

For more information about working with JasperReports Server, see the TIBCO Jaspersoft JasperReports Server User Guide and the TIBCO Jaspersoft JasperReports Server Administrator Guide that are provided within the docs folder of the JasperReports Server release package.

Planning the deployment of JasperReports Server on a cluster

If you are deploying TIBCO JasperReports Server on a cluster of JasperReports Server instances, your should develop a plan for your deployment of the cluster.

Before deploying the cluster, you should be familiar with the information provided about designing clusters and sizing clusters at: http://community.jaspersoft.com/documentation/.

It is recommended that you plan to deploy JasperReports Server with an identical hardware and software configuration in a staging environment, and with a similar data shape that is either generated sample data on the same scale as production or a copy of production data. Every deployment necessarily performs differently due to the nature of the initial report designs and the data shape. Your plan should identify potential performance issues in advance of the production deployment to enable you to analyze Java virtual machine (JVM) tuning, report designs, database optimization, caching, and other performance tuning options. For additional information on developing an automated load test using Apache JMeter, see http://community.jaspersoft.com/wiki/performance-testing-jmeter.

Modifying the Windows registry for IIS web servers in front of the application server

If you want to deploy one or more IIS web servers on Microsoft Windows Server to load balance requests to your WebSphere application server cluster, ensure that the following Microsoft Windows registry setting is configured on each IIS server. This will resolve issues with long URLs that may be truncated, as the HTTP request is processed within IIS before the request is proxied to your application server.

To modify the Windows registry:

  1. Create the setUrlSegmentMaxLength.reg file, which creates a new DWORD named UrlSegmentMaxLength under HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters with the value of 8192.

    Windows Registry Editor Version 5.00 
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP\Parameters] 
    "UrlSegmentMaxLength"=dword:00002000
  2. Save any changes and execute the registry script.

  3. Stop the WebSphere application servers and restart Windows.

The Windows registry is modified.

Next, deploy JasperReports Server in a WebSphere application server environment.

Deploying JasperReports Server for WebSphere 8.5.5

You can deploy TIBCO JasperReports Server 6.2.0 on WebSphere 8.5.5.

Before you begin installing JasperReports Server on WebSphere, you should have installed the following:

  • Microsoft Windows Server 2008 R2 or 2012, or Windows 7 or 10 (for development)
  • Oracle JDK 1.6.0_45 (64-bit) or an Oracle JRE 7 or JRE 8

    Info

    The documented examples refer to the 1.6.0_45 version that NexJ provides, but it is optional.

  • IBM WebSphere 8.5.5 with Fix Pack 8 (or later Fix Pack)
  • For JasperReports Server 5.6.1, Microsoft SQL Server 2012, or Oracle 11g R1 or R2
  • For JasperReports Server 6.2.0, Microsoft SQL Server 2012 or 2016, or Oracle 11g R2, or Oracle 12c

To deploy JasperReports Server on WebSphere:

  1. Create a JasperReports Server cluster and application server. For more information, see Creating a JasperReports Server cluster and application server.
  2. Prepare the JasperReports Server package. For more information, see Preparing the JasperReports Server cluster and application server.
  3. Install JasperReports Server using TIBCO Jaspersoft buildomatic. For more information, see Installing JasperReports Server using Jaspersoft buildomatic.
  4. Configure WebSphere for JasperReports Server. For more information, see Configuring WebSphere for JasperReports Server.
  5. Install the JasperReports Server WAR file. For more information, see Installing the JasperReports Server WAR file.
  6. Configure the environment file for Single Sign-on to JasperReports Server. For more information, see Configuring the environment file for Single Sign-on to JasperReports Server.
  7. Configure the NexJ environment to include a JasperReports Server URL for Ad Hoc Reports. For more information, see Configuring the NexJ environment to include a JasperReports Server URL for Ad Hoc Reports.
  8. Update the Java virtual machine (JVM) parameters for JasperReports Server. For more information, see Updating the JVM parameters for the JasperReports Server application.
  9. Configure the WebSphere plug-in on an IIS server. For more information, see Configuring the WebSphere plug-in on an IIS server.

Next, create a JasperReports Server cluster and application server.

Creating a JasperReports Server cluster and application server

Create an application server cluster with one or more Java virtual machines (JVMs).

To create a TIBCO JasperReports Server cluster and application server:

  1. Log in to the WebSphere Integrated Solutions Console and create an application cluster with one or more JVMs:
    • <clusterName> (for example, JASPER1)
    • <clusterMember> (for example, JASPER1S01)
  2. Start and stop the <clusterName> cluster to initialize it.
  3. Update the minimum JVM heap sizes to match the maximum heap sizes:
    1. Select Servers → Server Types → WebSphere application servers.
    2. Click the link for the JasperReports Server JVM.
    3. Select Java and Process Management → Process definition → Java Virtual Machine.
    4. Copy the value from the Maximum heap size field to the Initial heap size field.
    5. Click OK.
    6. Click Save to save the changes to the master configuration.
  4. Restart the deployment manager and node agents for the changes above to take effect.

The JasperReports Server cluster and application server is created.

Next, prepare the JasperReports Server package.

Preparing the JasperReports Server package

Prepare the TIBCO JasperReports Server package.

To prepare the JasperReports Server package:

  1. Extract the JasperReports Server zip file located in the release package named:
    • etc\jasperreports-server-5.6.1-nexj-<xx.x.xxx.x>-bin.zip (for JasperReports Server 5.6.1)
    • etc\jasperreports-server-6.2.0-nexj-<xx.x.xxx.x>-bin.zip (for JasperReports Server 6.2.0)
      to C:\NexJ, and rename the extracted folder to a shorter path on your data drive. For example, use C:\tmp\jasperserver.

      Info

      The extracted location will be referred to as %JASPER_INSTALL%.

      The shortened path overcomes path length restrictions on Windows during the deployment process

  2. Ensure that the JAVA_HOME environment variable is set to point to C:\Java\jdk_1.6.0_45.

  3. Obtain a copy of the JasperReports Server license file and place it in %WAS_INSTALL%\nexj\jasperserver.license.

    Info

    %WAS_INSTALL% is the location where your WebSphere application server is installed. %WAS_INSTALL%
    includes the following paths: %WAS_ROOT%\AppServer\V85 for WebSphere 8.5.5.

    This is required for each application server node.

The JasperReports Server package is ready to install.

Next, install JasperReports Server using TIBCO Jaspersoft buildomatic.

Installing JasperReports Server using Jaspersoft buildomatic

Configure TIBCO Jaspersoft buildomatic using the default_master.properties files and install TIBCO JasperReports Server.

To configure the default_master.properties file and install JasperReports Server:

  1. Configure the default_master.properties file:
    1. Copy %JASPER_INSTALL%\buildomatic\sample_conf\sqlserver_master.properties to %JASPER_INSTALL%\buildomatic.
    2. Rename %JASPER_INSTALL%\buildomatic\sqlserver_master.properties to %JASPER_INSTALL%\buildomatic\default_master.properties.
    3. In a text editor, open the default_master.properties file.
    4. Update the appServerType line as follows. Comment out other occurrences of the appServerType property, and uncomment the last line, which sets the property to skipAppServerCheck.
      appServerType = skipAppServerCheck
  2. Update the database user name, password, hostname, port, and database name:

    dbUsername= 
    dbPassword= 
    dbHost=localhost 
    dbPort=1433 
    authenticationMethod=ntlm 
    js.dbName=jasperserver

    Info

    If the database needs to be created, and you are using the NTLM method of authentication, ensure your Windows user on the command prompt has the dbcreator or sysadmin server roles in Microsoft SQL Server. If you comment out the authenticationMethod property and wish to specify SQL Server authentication, ensure that the <dbUsername> user has the dbcreator or sysadmin server roles.

    If only the database schema needs to be loaded, ensure the same user has the db_ddladmin or db_owner database role.

  3. If the database server is set to Force Protocol Encryption, add the following to the default_master.properties file:

    encryptionMethod=SSL
    
    ValidateServerCertificate=false
    
    js.jdbcUrl=${sqlserver.jdbcUrlProtocol}://${dbHost}:${dbPort};databaseName=
    ${js.dbName};SelectMethod=cursor;authenticationMethod=${authenticationMethod};
    EncryptionMethod=${encryptionMethod};ValidateServerCertificate=${ValidateServerCertificate}
  4. Install the following DLL libraries to enable Windows authentication between the JDBC driver and SQL Server by copying the following files used for Windows authentication:

    • For JasperReports Server 5.6.1: %JASPER_INSTALL%\buildomatic\conf_source\db\sqlserver\jdbc\DDJDBC*Auth05.dll

    • For JasperReports Server 6.2.0: %JASPER_INSTALL%\buildomatic\tools\DDJDBC*Auth05.dll to the following locations:

      • %JAVA_HOME%\jre\bin

      • %WAS_INSTALL%\java\jre\bin

        Info

        This is required for each application server node.
        Only the DDJDBCx64Auth05.dll file is needed on AMD64 Windows architecture.

  5. Create the JasperReports Server database using TIBCO Jaspersoft buildomatic by running the following commands in a Command Prompt window launched using the Run as Administrator option:

    cd %JASPER_INSTALL%\buildomatic 
    js-ant gen-config 
    js-install minimal

    Info

    The js-install minimal command optionally creates the database and/or loads the database schema and data. There is a prompt to skip creating the database if the database already exists.

  6. Prepare the JasperReports Server WAR file for installation on WebSphere:
    1. Go to %JASPER_INSTALL%\buildomatic\build_conf\default\webapp\WEB-INF.
    2. Edit the js.quartz.properties file. Change the report.scheduler.web.deployment.uri property's value to match the frontend address of the eventual JasperReports Server. For example:
      Report.scheduler.web.deployment.uri=https://company.com/jasperserver-pro
    3. Using 7-Zip or another archival application, add the following files to the %JASPER_INSTALL%\jasperserver-pro.war archive at jasperserver-pro.war!/WEB-INF.
      Note: If the files already exist, overwrite them.
      • %JASPER_INSTALL%\buildomatic\build_conf\default\webapp\WEB-INF\hibernate.properties
      • %JASPER_INSTALL%\buildomatic\build_conf\default\webapp\WEB-INF\js.quartz.properties
    4. Using 7-Zip or another archival application, extract the following files from the jasperserver-pro.war archive:
      • jasperserver-pro.war!/WEB-INF/esapi/Owasp.CrsfGuard.properties
      • jasperserver-pro.war!/WEB-INF/js.config.properties
    5. Edit the Owasp.CrsfGuard.properties file:
      1. Remove the following line near the end of the file:
        org.owasp.csrfguard.PRNG=SHA1PRNG
      2. Add the following two lines at the end of the file:

        org.owasp.csrfguard.PRNG=IBMSecureRandom org.owasp.csrfguard.PRNG.Provider=IBMJCE
    6. Edit the js.config.properties file.

      1. Add the following lines at the end of the file:

        ehcache.adhocCache.maxBytesLocalHeap=1g 
        ehcache.adhocCache.timeToIdleSeconds=1200 
        ehcache.adhocCache.timeToLiveSeconds=5400 
        ehcache.adhocCache.memoryStoreEvictionPolicy=LRU
      2. Ensure that the ehcache.adhocCache.maxBytesLocalHeap is set to ¼ of the size of the JVM heap allocated to JasperServer, as a starting point. If the JasperServer JVM's heap is 12 GB, the ehcache.adhocCache.maxBytesLocalHeap should be set to 3 GB.
        ehcache.adhocCache.maxBytesLocalHeap=3g

      3. Using 7-Zip or another archival application, add the following files back to the jasperserverpro.war archive to the location indicated:
        • js.config.properties to jasperserver-pro.war!/WEB-INF
        • Owasp.CrsfGuard.properties to jasperserver-pro.war!/WEB-INF/esapi
    7. When you are using WebSphere 8.5.5, use 7-Zip or another archival application with the jasperserver-pro.war archive to remove:
      • jta-1.1.jar from jasperserver-pro.war!/WEB-INF/lib
      • stax-api-1.0.1.jar from jasperserver-pro.war!/WEB-INF/lib

The properties files have been configured and the WAR file is configured.

Next, configure your WebSphere application server environment for JasperReports Server.

Configuring WebSphere for JasperReports Server

Configure your IBM WebSphere application server for TIBCO JasperReports Server.

To configure your WebSphere application server:

  1. Create a JDBC provider. For more information, see Creating a JDBC provider.
  2. Configure a JasperReports Server data source. For more information, see Configuring a JasperReports Server data source.
  3. Update the custom properties for the JasperReports Server data source. For more information, see Updating the custom properties for the JasperReports Server data source.
  4. Create a Business Intelligence (BI) data source for Ad Hoc Reports. For more information, see Creating a BI data source for Ad Hoc Reports.
  5. Create a NexJ operational data source for Ad Hoc Reports. For more information, see Creating a NexJ operational data source for Ad Hoc Reports.

Your WebSphere application server is configured for JasperReports Server.

Next, create a JDBC provider.

Creating a JDBC provider

Create a JDBC provider in the WebSphere Integrated Solutions Console.

To create a JDBC provider:

  1. Log in to the WebSphere Integrated Solutions Console.
  2. Select Resources → JDBC → JDBC providers.
  3. Click on the guided activity link at the top.
  4. In the Configure a JDBC provider panel, click Click to perform.
  5. Change the Scope drop-down menu to Cluster=JASPER1.
  6. Click New to create a new JDBC provider.
  7. In Step 1: Create new JDBC provider, enter the following information for the TIBCO SQL Server JDBC driver:
    Database type
    User-defined
    Implementation class name for JasperReports Server 5.6.1
    tibcosoftware.jdbc.sqlserver.SQLServerDataSource
    Implementation class name for JasperReports Server 6.2.0
    tibcosoftware.jdbcx.sqlserver.SQLServerDataSource
    Name
    TIBCO JDBC Provider - SQL Server
  8. Click Next.
  9. Copy the TIBCO JDBC driver from %JASPER_INSTALL%\conf_source\db\sqlserver\jdbc\<driverName>.jar to %WAS_INSTALL%\nexj\lib\driverName.jar.

    Info

    If you are running a clustered environment, you must copy the driver to the DMGR and each application server node.
    For JasperReports Server 5.6.1, replace <driverName>.jar with ji-sqlserver-driver-1.0.12.jar.
    For JasperReports Server 6.2.0, replace <driverName>.jar with TIsqlserver-5.12.jar.

  10. In Step 2: Enter database class path information, enter %WAS_INSTALL%\nexj\lib\driverName.jar in the Class path text box.
  11. Click Next.
  12. In Step 3: Summary, click Finish.

The JDBC provider is created.

Next, configure a JasperReports Server data source.

Configuring a JasperReports Server data source

Configure your TIBCO JasperReports Server data source.

To configure a JasperReports Server data source:

  1. From the WebSphere Integrated Solutions Console, and in the Configure a data source panel, click Click to perform.
  2. Click the TIBCO JDBC Provider - SQL Server JDBC provider created in the previous steps.
  3. Click Data sources, then New.
  4. In Step 1: Enter basic data source information, enter the following information:
    Data source name
    JasperServer
    JNDI name
    jdbc/jasperserver
  5. Click Next when prompted to Enter database specific properties for the data source.
  6. On the Setup security aliases page, select the node agent service account in the Component-managed authentication alias drop-down menu.
  7. Click Next and Finish.

Your JasperReports Server data source is configured.

Next, update the custom properties for your JasperReports Server data source.

Updating the custom properties for the JasperReports Server data source

Update the custom properties for the TIBCO JasperReports Server data source.

To update the custom properties:

  1. From the WebSphere Integrated Solutions Console, click the newly created JasperServer data source link, then click Custom properties.
  2. Enter or update the following custom properties:
    Custom properties

    PropertyValue
    authenticationMethodntlm
    batchPerformanceWorkaroundtrue
    databaseName<jasperserver>
    enable2Phasefalse
    portNumber<1433>
    serverName<db.company.com>
  3. If the database server is set to Force Protocol Encryption, ensure the following custom properties are also set:
    Custom properties for Force Protocol Encryption

    PropertyValue
    encryptionMethodSSL
    ValidateServerCertificatefalse
  4. Save the changes to the master configuration.

  5. Select Resources → JDBC → Data sources.

  6. Select the jasperserver data source and click the Test connection button. Ensure that no errors occur.

  7. Select Integrated Solutions Console → Resources → JDBC → Data sources → JasperServer Connection pool properties.

  8. Set the following minimum values:
    Maximum connections
    100
    Minimum connections
    30

  9. Click OK and save your changes to the master configuration.

The custom properties are updated.

Next, create a NexJ BI database data source using the Java Naming and Directory Interface (JNDI).

Creating a BI data source for Ad Hoc Reports

Create a NexJ Business Intelligence (BI) data source that uses the Java Naming and Directory Interface (JNDI).

To create a NexJ BI data source:

  1. From the WebSphere Integrated Solutions Console, select Resources → JDBC providers.
  2. Click TIBCO JDBC Provider - SQL Server.
  3. Click Data sources.
  4. Click New.
  5. Enter the following information:
    Data source name
    NexJ AdHoc BI_1_BI_Database
    JNDI name
    jdbc/nexj/BI_1_BI_Database
  6. Click Next when prompted to Enter database specific properties for the data source.
  7. On the Setup security aliases page, select the node agent service account in the Component-managed authentication alias drop-down menu.
  8. Click Next and then Finish.
  9. Click the newly created NexJ AdHoc BI_1_BI_Database data source link, then click Custom properties.
  10. Enter or update the following custom properties:
    Custom properties

    PropertyValue
    authenticationMethodntlm
    batchPerformanceWorkaroundtrue
    databaseName<databaseName_bi> (for example, finance_bi)
    enable2Phasefalse
    portNumber<1433>
    serverName<db.company.com>
  11. If the database server is set to Force Protocol Encryption, ensure the following custom properties are also set:
    Custom properties for Force Protocol Encryption

    PropertyValue
    encryptionMethodSSL
    ValidateServerCertificatefalse
  12. Save the changes to the master configuration.
  13. Select Resources → JDBC → Data sources.
  14. Select the NexJ AdHoc BI_1_BI_Database data source and click the Test connection button. Ensure that no errors occur.
  15. Select Integrated Solutions Console → Resources → JDBC → Data sources → NexJ AdHoc BI_1_BI_Database → Connection pool properties.
  16. Set the following values:
    Maximum connections:
    100
    Minimum connections:
    30
  17. Click OK and save your changes to the master configuration.

The NexJ BI data source is created.

Next, optionally create a NexJ operational data source or skip to installing the JasperReports Server WAR file.

Creating a NexJ operational data source for Ad Hoc Reports

Due to performance and security considerations with Ad Hoc Reports and an operational data source, you may choose to skip this procedure as it should not normally be necessary. If your requirements require reporting against a deployed operational model, you can create a NexJ operational data source for Ad Hoc Reports.

To create an operational data source for Ad Hoc Reports:

  1. From the WebSphere Integrated Solutions Console, select Resources → JDBC → Data sources.
  2. Click TIBCO JDBC Provider - SQL Server.
  3. Click Data sources.
  4. Click New.
  5. Enter the following information:
    Data source name
    NexJ AdHoc DefaultRelationalDatabase
    JNDI name
    jdbc/nexj/DefaultRelationalDatabase
  6. Click Next when prompted to Enter database specific properties for the data source.
  7. On the Setup security aliases page, enter the Component-managed authentication alias by selecting the node agent service account.
  8. Click Next, then Finish.
  9. Click the newly-created NexJ AdHoc DefaultRelationalDatabase link, then click Custom properties.
  10. Enter or update the following custom properties:
    Custom properties

    PropertyValue
    authenticationMethodntlm
    batchPerformanceWorkaroundtrue
    databaseName<databaseName_default> (for example, finance_default)
    enable2Phasefalse
    portNumber<1433>
    serverName<db.company.com>
  11. If the database server is set to Force Protocol Encryption, ensure the following custom properties are also set:
    Custom properties for Force Protocol Encryption

    PropertyValue
    encryptionMethodSSL
    ValidateServerCertificatefalse
  12. Save the changes to the master configuration.
  13. Select Resources → JDBC → Data sources.
  14. Select the NexJ AdHoc DefaultRelationalDatabase data source and click the Test connection button. Ensure that no errors occur.
  15. Select Integrated Solutions Console → Resources → JDBC → Data sources → NexJ AdHoc DefaultRelationalDatabase → Connection pool properties.
  16. Set the following values:
    Maximum connections:
    30
    Minimum connections:
    1
  17. Click OK and save your changes to the master configuration.

The NexJ operational data source is created.

Next, install the JasperReports Server WAR file.

Installing the JasperReports Server WAR file

Install the TIBCO JasperReports Server Web application Archive (WAR) file.

To install the WAR file:

  1. From the WebSphere Integrated Solutions Console, select Applications → New Application → New Enterprise Application.
  2. If you WAR file is located on a server or a remote location, make a local copy of it. Select Local file system and browse to a copy of the WAR file at %JASPER_INSTALL%\jasperserver-pro.war.
  3. Click Next.
  4. Select Fast Path and click Next.
  5. On the Select installation options page, leave the default options, and click Next.
  6. On the Map modules to servers page, use Ctrl + click to multi-select the following components and repeat for any remaining web server you want to use:
    • WebSphere:cell=[<CellName>],cluster=<JASPER1>;
    • WebSphere:cell=[<CellName>],node=[<NodeName>],server=<WebServer>
  7. Select the Select check box next to the JasperServer UI application module, then click Apply. Click Next after the page refreshes.
  8. On the Map resource references to resources page, select the jdbc/jasperserver, jdbc/sugarcrm, and jdbc/foodmart resource references and use the Set Multiple JNDI Names drop-down menu to select jdbc/jasperserver.
  9. On the Map resource references to resources page, select the jdbc/nexj/BI_1_BI_Database resource references and use the Set Multiple JNDI Names drop-down menu to select jdbc/nexj/ BI_1_BI_Database Database.
  10. On the Map resource references to resources page, select the jdbc/nexj/DefaultRelationalDatabase resource references and use the Set Multiple JNDI Names drop-down
    menu to select jdbc/nexj/DefaultRelationalDatabase.
  11. Click OK.
  12. On the Map virtual hosts for Web modules page, select the Select checkbox next to the JasperServer UI application module, and select the virtual host from the drop-down menu.
  13. Click Next.
  14. On the Map context roots for Web modules page, enter /jasperserver-pro as the context root for the JasperServer UI application web module. Click Next.
  15. On the Summary page, click Finish.
  16. When done, save the changes to the master configuration.

The JasperReports Server WAR file is installed.

Next, configure the NexJ SSO environment file for TIBCO JasperReports Server.

Configuring the environment file for Single Sign-on to JasperReports Server

Configure the environment file for Single Sign-On to TIBCO JasperReports Server.

To configure the environment file:

  1. Copy the Jasperserver.environment file from the release package to %WAS_INSTALL%\nexj\Jasperserver.environment.

    Info

    If you are running a clustered environment, you must copy the environment file to any application server running JasperReports Server.

  2. Update the following values in the environment file:
    • httpSSOURL
    • httpURL
    • PKIKeyPair
    • SOAConnection
    • PKIKeyPair
      The following information provides an example:

<Environment authProtocol="perimeter" httpSSOURL="https://company.com/nexj"
httpURL="https://company.com/jasperserver-pro" messagePort="1113"
meta.url="nexj/meta/http_www_nexjsystems_com_ns_jasper"
test="true" type="Generic">
<PKIKeyPairs>
<PKIKeyPair keystore="generatedKeyStore" name="nexjsa" password="testPass"/>
</PKIKeyPairs>
<SOAConnections>
<SOAConnection address="https://company.com/nexj/channel/
SOAGenericRequestReceiverChannel" auth="perimeter" binding="trpc"
service="nexj:sso:Authentication:1.0">
<Properties>
<Property name="system" value="#t"/>
</Properties>
</SOAConnection>
</SOAConnections>
</Environment>

Info

The PKIKeyPair should match the NexJ environment's key pair.

The NexJ SSO environment file has been configured.

Next, configure the NexJ environment to include a JasperReports Server URL for Ad Hoc Reports.

Configuring the NexJ environment to include a JasperReports Server URL for Ad Hoc Reports

Configure the NexJ environment for TIBCO JasperReports Server.

To configure the NexJ environment:

  1. In a text editor, open the properties file for the environment being configured. For example, you may have a Production.environment and a corresponding Production.properties file within your release package. In this case, open the Production.properties file. You may also refer to the env \Development.properties file in the release package.
  2. Add the following variables and corresponding values to the existing properties file. You may also refer to \env\Development.properties in the release package.
    Environment.httpReportURL = https://<company.com>/jasperserver-pro/
  3. Reseed the NexJ model's operational database.
    This step may already be covered by existing data load scripts. Alternatively, you can manually reseed by updating the loaded column to 0 in the NJVersion table of the DefaultRelationalDatabase datasource and seeding will automatically occur on the next application startup.

The NexJ environment has been configured.

Next, update the Java virtual machine (JVM) parameters for the JasperReports Server application.

Updating the JVM parameters for the JasperReports Server application

Update the Java virtual machine (JVM) parameters for JasperReports Server.

To update the JVM parameters:

  1. From the WebSphere Integrated Solutions Console, select Servers → Server Types → WebSphere application servers.
  2. For each application server instance in the JasperReports Server cluster, open its properties file by clicking on its link.
  3. Select Java and Process Management → Process definition → Java Virtual Machine.
  4. Set the Initial heap size and the Maximum heap size values to 4096 (minimum). More common values are 8192 or more depending on the outcome and evaluation of the performance and load testing phase.
  5. Append the following to the Generic JVM arguments field then click OK:

    Info

    Ensure that you reformat all arguments so that they are on a single line.

    Change the path to the nexj.config file and js.license.directory to %WAS_INSTALL%/nexj/.

    -Dclient.encoding.override=UTF-8 -Xms4096m -Xmx4096m
    -Xss2m -Xgcpolicy:gencon 
    -Xgc:preferredHeapBase=0x100000000 –Xdisableexplicitgc 
    -Djavax.xml.soap.MessageFactory=org.apache.axis.soap.MessageFactoryImpl
    -Djavax.xml.soap.SOAPConnectionFactory=org.apache.axis.soap.SOAPConnection
    FactoryImpl
    -Djavax.xml.soap.SOAPFactory=org.apache.axis.soap.SOAPFactoryImpl
    -Djavax.xml.transform.TransformerFactory=org.apache.xalan.processor.Transformer
    FactoryImpl
    -Dnexj.config=file:///C:/WebSphere/AppServer/V80/nexj/
    -Djs.license.directory=C:/WebSphere/AppServer/V80/nexj/
    -Duser.timezone=Etc/UTC
  6. Change the class loading behavior for the JasperReports Server application:
    1. Go to Applications → Application Types → WebSphere enterprise applications → jasperserverpro_war → Class loading and update detection.
    2. Under Class loader order, select the Classes loaded with local class loader first (parent last) option.
      When using WebSphere 8.5.5, you also have to set the WAR class loader policy to Single class loader for application.
    3. Click OK and save your changes to the master configuration.
  7. Start the JasperReports Server cluster and verify there are no errors in the applications JVM logs.

The JVM parameters are updated.

Next, configure the WebSphere plug-in on an IIS server.

Configuring the WebSphere plug-in on an IIS server

You may employ an Internet Information Services (IIS) web server with an IBM WebSphere plug-in to act as a simple load balancer for the nodes in your JasperReports Server application cluster. Other alternatives for load balancing
may exist. The following is a sample configuration using the WebSphere plug-in for IIS on a Microsoft Windows 2008 Server.

To configure the WebSphere plug-in on an IIS web server:

  1. From the WebSphere Integrated Solutions Console, select Servers → Server Types → Web Servers → <Web Server> → Plug-in Properties → Custom Properties.
  2. Set the IgnoreAffinityRequests property to false.
  3. Select Servers → Server Types → Web Servers → WebSphere application servers → <JasperServer JVM> → Java and Process Management → Process definition → Java Virtual Machine → Custom Properties.
  4. Set the HttpSessionIdReuse property to true.
  5. Select Servers → Server Types → WebSphere application servers → <JasperServer JVM> → Session management → Custom Properties.
  6. Set the ForceSessionInvalidationMultiple property to 0.
  7. To propagate the plug-in:
    1. Select Environment → Update global Web server plug-in configuration in the Integrated Solutions Console.
    2. Click OK.
    3. Right-click on the View or download the current Web server plug-in configuration file link and select Save Target As.
    4. Save the plugin-cfg.xml file.
    5. On each web server (you may have multiple web servers in a clustered environment), back up, and update the plugin-cfg.xml file in the Plugins directory with the newly downloaded file.
      For example, back up and update the file located at %WAS_ROOT%\Plugins\V85\<webserverName>\plugin-cfg.xml for WebSphere 8.5.5.

      Info

      Replace <webserverName> as appropriate.

    6. Restart IIS on each web server.
    7. Verify that the application launches through the web server by using https://<company.com>/jasperserver-pro.
    8. Log in to JasperReports Server using username superuser and password superuser. This account is reserved for the system administrator.

The WebSphere plug-in for IIS is configured and propagated.

Next, proceed to the JasperReports Server post-deployment procedures, and import the catalog.zip BI catalog.

Deploying the JasperReports Server plug-in to NexJ Studio

You can deploy Ad Hoc Reports by installing TIBCO JasperReports Server 6.2.0 as a plug-in to NexJ Studio. The plug-in provides you with a user interface for installing JasperReports Server to NexJ Server rather than having to use install scripts.

Installing JasperReports Server 6.2.0 as a plug-in to NexJ Studio

TIBCO JasperReports Server 6.2.0 can be installed as a plug-in to NexJ Studio so that you can more easily deploy Ad Hoc Reports.

To install the JasperReports Server plug-in:

  1. In NexJ Studio, select Help and Install New Software.
  2. Click Add to add a site.
  3. In the Name field, enter JasperServer Plugin.
  4. In the Location field, enter http://install.nexj.com/branch/default/jasperserver/.
  5. Click OK.
  6. Select the latest version of the JasperReports Server plug-in, and continue to click OK until you have completed all of the installation wizard steps.

The JasperReports Server 6.2.0 plug-in is installed in NexJ Studio.

Next, configure the Eclipse startup parameters.

Configuring the Eclipse startup parameters

You will need to configure the Eclipse startup parameters to ensure that NexJ Studio and the JasperReports Server plug-in function successfully.

To configure the Eclipse startup parameters:

  1. Configure the eclipse.ini file according to your version of NexJ Customer Relationship Management:
    NexJ CRM version 8.2 or later
    The eclipse.ini file should specify a Java Runtime Environment 7 (JRE 7) using the following parameter:
    -vm C:/java/jdk1.7.0_75/jre/bin/server
    NexJ CRM version 7.2
    The eclipse.ini file should specify a JRE 6 using the following parameter:
    -vm C:/java/jdk1.6.0_45/jre/bin/server
  2. Ensure the eclipse.ini file allocates at least 2 GB of heap space using the following parameter:

    -vmargs 
    -Xms2048m 
    -Xmx204
  3. The eclipse shortcut should specify -clean as follows:
    C:\java\eclipse-4.5.1_x64\eclipse.exe -clean -data %WS%

The Eclipse startup parameters are updated.

Next, create the required database for the JasperReports Server application.

Creating the JasperReports Server application database

The JasperReports Server needs a database to store its own state. This database is separate from the NexJ BI database that contains the information that you wish to report on.

To create the JasperReports Server database:

  1. In NexJ Studio, launch the JasperServer Deployment Tool by selecting Run → JasperServer Tool → JasperServer Deployment Tool or clicking the drop-down arrow next to the JasperServer Tools button in the toolbar and select JasperServer Deployment Tool.
    The JasperServer Deployment Tool dialog opens.
  2. Select the model you will be using with JasperReports Server, which is Current in most cases.
  3. Select the server and connections for your deployment.
  4. In the Command field, select create.db.
  5. Select Specify configuration manually and continue to step 6, or if your project has a saved configuration, select Load configuration from file, select the configuration file, and continue to step 12.
  6. In the Database host field, enter the host name of the database server, for example, localhost.
  7. In the Database port field, enter the port number for connecting to the database server, for example, 1433.
  8. In the Database name field, enter the JasperReports Server database name, for example, jasperserver.
  9. In the Database username field, enter the user name for connecting to the database when you are not using Microsoft NT LAN Manager (NTLM) authentication.
  10. In the Database password field, enter the password for connecting to the database when you are not using NTLM authentication.
  11. [Optional] If you specify a file path in the Save configuration to field, the system will create a configuration file that can be committed to source control to enable you to reproduce deployments.
  12. Click Run to create the database.

After a successful execution, a new database is created with your specified name and populated with the basic JasperReports Server application data.

Next, import the required metadata into your JasperReports Server database.

Importing the metadata for the JasperReports Server application database

NexJ has created sample objects for the JasperReports Server application to provide basic BI reporting functionality. These objects include a data source, domains, ad hoc views, and reports.

The sample objects are stored in the model under the \jaspercatalogs folder and must be imported into your JasperReports Server database.

To import these objects:

  1. In NexJ Studio, launch the JasperServer Deployment Tool by selecting Run → JasperServer Tool → JasperServer Deployment Tool or clicking the drop-down arrow next to the JasperServer Tools button in the toolbar and select JasperServer Deployment Tool.
    The JasperServer Deployment Tool dialog opens.
  2. In the Command field, select import.
  3. Set the catalog directory to the directory containing the exploded catalog archive (for example, D:\work\ws\finance\meta\jaspercatalogs\common-db).
  4. Select Specify configuration manually and continue to step 6, or if your project has a saved configuration, select Load configuration from file, select the configuration file, and continue to step 11.
  5. In the Database host field, enter the hostname of the database server, for example, localhost.
  6. In the Database port field, enter the port number for connecting to the database server, for example, 1433.
  7. In the Database name field, enter the JasperReports Server database name, for example, jasperserver.
  8. In the Database username field, enter the user name for connecting to the database when you are not using Microsoft NT LAN Manager (NTLM) authentication.
  9. In the Database password field, enter the password for connecting to the database when you are not using NTLM authentication.
  10. [Optional] If you specify a file name in the Save configuration to field, the system will create a configuration file that can be committed to source control to enable you to reproduce deployments.
  11. Click Run to import the catalog.

After successful execution, the JasperReports Server application database contains the sample objects that NexJ has created.

Next, deploy the JasperReports Server application.

Deploying the JasperReports Server application to NexJ Server

The JasperServer Deployment Tool can be used to deploy the JasperReports Server application to NexJ Server. The deploy command can be rerun at a later time to update the deployed application. The deploy command will remove any existing JasperReports Server deployment and then deploy it.

To deploy JasperReports Server to NexJ Server:

  1. In NexJ Studio, launch the JasperServer Deployment Tool by selecting Run → JasperServer Tool → JasperServer Deployment Tool or clicking the drop-down arrow next to the JasperServer Tools button  in the toolbar and select JasperServer Deployment Tool.
    The JasperServer Deployment Tool dialog opens.
  2. Select the model you will be using with JasperReports Server, which is Current in most cases.
  3. Select the server and connections for your deployment.
    In the Command field, select deploy.
  4. Select Specify configuration manually and continue to step 6, or if your project has a saved configuration, select Load configuration from file, select the configuration file, and continue to step 12.
  5. In the Database host field, enter the hostname of the database server, for example, localhost.
  6. In the Database port field, enter the port number for connecting to the database server. for example, 1433.
  7. In the Database name field, enter the JasperReports Server database name, for example, jasperserver.
  8. In the Database username field, enter the user name for connecting to the database when you are not using Microsoft NT LAN Manager (NTLM) authentication.
  9. In the Database password field, enter the password for connecting to the database when you are not using NTLM authentication.
  10. [Optional] If you specify a file name in the Save configuration to field, the system will create a configuration file that can be committed to source control to enable you to reproduce deployments.
  11. Click the Run button to deploy JasperReports Server.

After successful execution, the JasperReports Server application is deployed to NexJ Server, the application files are in the specified application server location, and the application is ready to launch.

Next, launch the JasperReports Server application.

Launching the JasperReports Server application

In order for NexJ Customer Relationship Management to successfully load the Ad Hoc Reports workspace, the appropriate URL must be seeded in the NexJ database.

To launch the JasperReports Server application:

  1. In the NexJ CRM environment file, on the Overview tab, on the Communication tab, specify the Ad Hoc Reports URL. For NexJ Server, the URL is usually http://localhost:7080/jasperserver-pro.
  2. Once the environment file is up-to-date, recreate the database to seed this value. Alternatively, you can reseed the database without recreating it by running the following command in the console:
    (begin-privileged (SysUpgrade’seed)) (commit)
  3. [Optional] If you are running JasperReports Server on NexJ Server, you must set the following JVM arguments in the Server/Application settings or Scheme Console Settings:

    -Xms1024m -Xmx2048m -Xss2m
    -XX:PermSize=64m
    -XX:MaxPermSize=512m
    -XX:+UseConcMarkSweepGC
    -XX:+CMSClassUnloadingEnable
  4. In NexJ Studio launch NexJ CRM from the Run application button or start the Server Console, which will also start JasperReports Server.

Info

You can open the Ad Hoc Reports workspace in NexJ CRM to verify whether JasperReports Server is running.

The JasperReports Server application launches and you have a working instance of JasperReports Server.

Configuring Ad Hoc Reports after deployment

After you deploy TIBCO JasperReports Server, you must import the catalog.zip BI catalog, test the Business Intelligence (BI) data source connection, and change the default superuser password.

Info

The instructions in this section do not apply if you have chosen to install JasperReports Server as a plug-in to NexJ Studio.

Importing the BI catalog import file

Import the Business Intelligence (BI) catalog file, named catalog.zip.

Before you begin, your development team should have generated your JasperServer domain in the domain output subdirectory. For more information about generating a domain from a BI model for Ad Hoc Reports, see the NexJ Studio Developer Guide.

To import the catalog.zip BI catalog:

  1. In the model metadata directory (unpublished directory, or extracted from the published jar file), locate the meta\jaspercatalogs\common-db subdirectory.
  2. Archive and zip the contents of the common-db directory and name the output file catalog.zip. The zip file should contain a resources directory, a roles directory, and an index.xml file.
  3. Log in to TIBCO JasperReports Server as the superuser by entering https://<company.com>/jasperserver-pro in a web browser, where <company.com> is the host name where JasperReports Server is installed.
    The following tasks must be performed as the superuser. Otherwise privilege rules will not be applied to the imported items.
  4. From the Settings list in the left pane, select Manage → Server Settings → Import.
  5. Click Choose File and select the catalog.zip file created previously.
  6. Keep the default import options and click Import.

The catalog.zip BI catalog is imported.

Next, test the BI data source.

Testing the BI data source connection

Test the Business Intelligence (BI) data source connection.

The import of the catalog.zip catalog must be complete.

To test the BI data source connection:

  1. Log in to TIBCO JasperReports Server and click View → Repository.
  2. In the Folders list on the left pane, expand Organizations → Organization → Finance → Data Sources.
  3. Select the NexJ data source and click Edit.
  4. Click Test Connection. Ensure that the test is successful.
  5. Select the NexJ Operational data source, if it exists, and click Edit.
  6. Click Test Connection. Ensure that the test is successful.
  7. Click Cancel.

The BI data source is configured.

Next, change the default superuser passwords.

Changing the default superuser password

Reset the default superuser password.

To reset a superuser's password:

  1. From TIBCO JasperReports Server, select Manage → Users.
  2. Select the superuser and click Edit.
  3. Reset the password to a secure value.
  4. Click Save.
  5. Select the jasperadmin user and click Edit.
  6. Reset the password to a secure value.
  7. Click Save.

The superuser's password is reset.