Connecting to JDBC Connectors Using CData Drivers

CData is a certified partner of Sisense that provides drivers for many of the Sisense JDBC connectors. This page provides generic instructions on connecting to CData connectors that are not covered by specific instructions in Sisense documentation.

The support for the connector is provided by Sisense and will be assisted by the certification partner's support, if needed. For any support issues or additional functionality requests, contact your Sisense representative or open a request through the Sisense Help Center . For advanced inquiries specific to driver functionality, you can also contact the certification partner’s support directly via support@cdata.com.

After you have downloaded the driver, you can connect to your application through a connection string in Sisense . The connection string is used to authenticate users who connect to your application’s APIs. Once you have connected to the application, you can import a variety of tables from the application’s API.

This page describes how to download the required driver and deploy it, how to connect to your application with a connection string, and more.

Downloading the JDBC Driver for Your Application

You can download the JDBC driver for your application here .
For a short video of downloading the driver, see below (the video uses the Box driver as an example).

Note:

  • The driver is certified for Sisense v7.2 and above.
  • Sisense v7.4 and above: Click the above link to download a ready-to-use driver.
  • Sisense prior to v7.4: Click the above link to download a 30-days free-trial of the driver. Contact Sisense for the full license version.

Deploying the Driver

Prerequisite: The install file (setup.jar) is a Java Application that requires Java 6 (J2SE) or above to run.
To install the driver, double-click the setup.jar file and proceed with the instructions in the installation wizard.

Depending on the machine on which you are accessing the Sisense application, install the driver in one of the following locations:

  • When Sisense is installed on your local machine , deploy the driver locally.

  • For a non-local installation (when accessing Sisense on a hosted cloud environment), select one of the below methods:

    • Deploy the driver on the Sisense server machine, and then perform all the authentication on the server machine. OR
    • Deploy the driver on your local machine (or any other machine, as convenient), perform all the authentication on that machine, and then copy the JAR file to the remote server.

Note:

The default location of the JAR file: C:\Program Files\CData\CData JDBC Driver for <Driver Name> 2019\lib

For a short video of the process, see below (the video uses the Box driver as an example).

JAVA Troubleshooting

If you do not have Java 6 installed, you may download it from here .

If your system is not set up to run Java applications, execute the following command: C:\Program Files\Sisense\infra\jre\bin\java.exe" -jar setup.jar.

Connecting to Your Application via a Connection String

To access your application from Sisense , you must create a connection string and provide it to Sisense .

To create the connection string:

  1. Open the lib directory for the connector. This is the default path: C:\Program Files\CData\CData JDBC Driver for <Driver Name> 2019\lib.

  2. Double-click the jar file in the lib directory.

    Alternatively, to open the jar file from the command line:

    1. Enter the following command in the command prompt (change the driver name to your driver):
    2. cd C:\Program Files\CData\CData JDBC Driver for <Driver Name> 2019\lib
    3. Press Enter .
    4. Enter the following command (change the driver name to your driver):
    5. “C:\Program Files\Sisense\infra\jre\bin\java.exe" -jar cdata.jdbc.<Driver Name>.jar.
    6. Press Enter.
    7. For example:


    The Connection String Builder opens.

  3. Click in the Value column and provide the values of the relevant properties:

If your application Enter the properties
requires OAuth
  • InitiateOAuth: set to ‘GETANDREFRESH’
  • Leave all the other properties empty

The driver uses embedded credentials which originate from a OAuth App embedded into the driver. The embedded credentials provide full functionality, so you do not have to create an OAuth App.

Note: If you want to configure the authentication or limit the scope of the data provided to Sisense, you will need to create your own OAuth App.

does not require OAuth
  • InitiateOAuth: set to ‘OFF’’
  • Set the User and Password properties to the credentials for your application.
  • If relevant, the Connection String Builder will require additional properties, as your application requires.

Note:

Each application requires different properties in the connection string. Find out more about the properties relevant to your application here .

  1. Click Test Connection . A new browser tab opens where you need to log in to your application in order to grant access. (Each application will display a different window and messages.)

    Close the Authorization Successful! message that opens.

  2. Go back to the Connection String Builder dialog, and click OK in the Test Connection Successful message to close it.

  3. Click Copy to Clipboard to obtain the connection string.

For a short video of the process, see below (the video uses the Box driver as an example).

You need to follow the above instructions only on first connect, and then when your credentials to the application change.

Importing Your Application’s Tables into Your ElastiCube

  1. Open Sisense.

    For a non-local installation, open Sisense on the hosted cloud environment.

  2. In the Data page, open an ElastiCube or create a new ElastiCube.

  3. In the Model Editor open the Add Data dialog box.

  4. Click Generic JDBC to open the JDBC settings.

  5. In Connection String, paste the string you obtained above:

    If your application The connection string
    requires OAuth

    In Sisense the string will be appended with some _persist properties. The following is an example of the connection string as it looks in Sisense:

    jdbc:<your driver>:Initiate OAuth="GETANDREFRESH";_persist_oauthexpiresin=3199;_persist_token_timestamp=1561893244662;_persist_oauthaccesstoken=mswNfVDVpnBZc3pkQQja7WRHNebbaGZL;_persist_oauthrefreshtoken=ybofHX3Vrd7C8cPhE5ZysVxFiUmkJSiw2htjPL0nKDBgpqjcyGP6Am7KNaDzqhZz;

    does not require OAuth

    Paste your string as-is, for example:

    jdbc:<your driver>:Initiate OAuth="OFF";User=XXXX;Password=********;

  6. In JDBC JARs Folder , enter the name of the directory where the JAR file is located.

  7. In Driver's Class Name , enter the following class. To obtain it, click here.

  8. In User Name and Password :

    If your application User Name and Password Fields
    requires OAuth Leave User Name and Password blank.
    does not require OAuth
    • If User Name and Password are part of the connection string, leave these fields blank.
    • If they are not part of the connection string, enter the credentials to your application here.
  9. Click Next. A list of tables in the database are displayed. All tables and views associated with the database will appear in a new window.

  10. From the Tables list, select the relevant table or view you want to work with. You can click next to the relevant table or click Preview to see a preview of the data inside it.

  11. (Optional) Click + to customize the data you want to import with SQL.

  12. After you have selected all the relevant tables, click Done . The tables are added to your data model.

For a short video of the process, see below (the video uses the Box driver as an example).

Changing the Default Separator

For some data sources, you must change the default separator to the separator required by your data source.
You can change the default separator by modifying the value of tableNamePattern in the following configuration file:
/opt/sisense/storage/connectors/jdbc_configs/

Limitations

  • The driver samples the first X rows and determines the column type. When Sisense finds rows within the data that does not match the column type, Sisense driver returns an error.

.r.