Ready to get started?

Learn more or sign up for a free trial:

CData Connect Server

DataBind Wijmo Grid to HCL Domino Data



Provide real-time HCL Domino data to interactive controls.

The Connect Server enables you to use Web services to connect to and query HCL Domino data. This article details how to import an OData feed of HCL Domino data into Wijmo Grid.

Configuring Connect Server

To work with live HCL Domino data in Wijmo Grid, we need to connect to HCL Domino from Connect Server, provide user access to the new virtual database, and create OData endpoints for the HCL Domino data.

Add a Connect Server User

Create a User to connect to HCL Domino from Wijmo Grid through Connect Server.

  1. Click Users -> Add
  2. Configure a User
  3. Click Save Changes and make note of the Authtoken for the new user

Connect to HCL Domino from Connect Server

CData Connect Server uses a straightforward, point-and-click interface to connect to data sources and generate APIs.

  1. Open Connect Server and click Connections
  2. Select "HCL Domino" from Available Data Sources
  3. Enter the necessary authentication properties to connect to HCL Domino.

    Prerequisites

    The connector requires the Proton component to be installed. Normally, Proton is distributed as part of the AppDev pack. See the HCL documentation for instructions on acquiring and installing Proton or the AppDev pack.

    Once the Proton service is installed and running, you will also need to create a user account and download its Internet certificate. This certificate can be used to set the connector certificate connection properties.

    Authenticating to Domino

    • Server: The name or IP address of the server running Domino with the Proton service.
    • Port: The port number that the Proton service is listening on.
    • Database: The name of the database file, including the .nsf extension.
    • SSLClientCertType: This must match the format of the certificate file. Typically this will be either PEMKEY_FILE for .pem certificates or PFXFILE for .pfx certificates.
    • SSLClientCert: The path to the certificate file.
    • SSLServerCert: This can be set to (*) if you trust the server. This is usually the case, but if you want to perform SSL validation, you may provide a certificate or thumbprint instead. See the documentation for SSLServerCert for details.

    Additional Server Configuration

    The connector supports querying Domino views if any are defined. Before views can be queried by the connector they must be registered with the design catalog.

    Please refer to the Catalog Administration section of the AppDev pack documentation for details on how to do this.

  4. Click Save Changes
  5. Click Privileges -> Add and add the new user (or an existing user) with the appropriate permissions (SELECT is all that is required for Reveal).

Add HCL Domino OData Endpoints in Connect Server

After connecting to HCL Domino, create OData Endpoints for the desired table(s).

  1. Click OData -> Tables -> Add Tables
  2. Select the HCL Domino database
  3. Select the table(s) you wish to work with and click Next
  4. (Optional) Edit the resource to select specific fields and more
  5. Save the settings

(Optional) Configure Cross-Origin Resource Sharing (CORS)

When accessing and connecting to multiple domains from an application such as Ajax, there is a possibility of violating the limitations of cross-site scripting. In that case, configure the CORS settings in OData -> Settings.

  • Enable cross-origin resource sharing (CORS): ON
  • Allow all domains without '*': ON
  • Access-Control-Allow-Methods: GET, PUT, POST, OPTIONS
  • Access-Control-Allow-Headers: Authorization

Save the changes to the settings.

Connect to HCL Domino Data using Wijmo Grid

Create a Real-Time Grid

Follow the steps below to consume HCL Domino data from the Wijmo JavaScript controls:

  1. Load the required Wijmo, jQuery, and Knockout libraries:
    			
    			<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
    			<script src="http://code.jquery.com/ui/1.11.0/jquery-ui.min.js"></script>
    
    			<!--Theme-->
    			<link href="http://cdn.wijmo.com/themes/aristo/jquery-wijmo.css" rel="stylesheet" type="text/css">
    
    				<!--Wijmo Widgets CSS-->
    				<link href="http://cdn.wijmo.com/jquery.wijmo-pro.all.3.20161.90.min.css" rel="stylesheet" type="text/css">
    
    					<!--Wijmo Widgets JavaScript-->
    					<script src="http://cdn.wijmo.com/jquery.wijmo-open.all.3.20161.90.min.js"></script>
    					<script src="http://cdn.wijmo.com/jquery.wijmo-pro.all.3.20161.90.min.js"></script>
    					<script src="http://cdn.wijmo.com/interop/wijmo.data.ajax.3.20161.90.js"></script>
    
    					<!--Knockout JS Library-->
    					<!-- Both of the links below can work -->
    					<script src="http://cdn.wijmo.com/wijmo/external/knockout-2.2.0.js"></script>
    					<!--<script src="http://cdn.wijmo.com/amd-js/3.20161.90/knockout-3.1.0.js"></script>-->
    
    					<!--Wijmo Knockout Integration Library-->
    					<script src="http://cdn.wijmo.com/interop/knockout.wijmo.3.20161.90.js"></script>
    		
  2. Create a ViewModel and connect to it using the ODataView. You will need to replace the placeholder values for the URL of the API Server, an API Server user, and the authtoken for that user.
    			
    			<script id="scriptInit">
    			$.support.cors = true;
    			var viewModel;
    
    			function ViewModel() {
    			var bynameView = new wijmo.data.ODataView("http://MyServer:MyPort/api.rsc/ByName", {
    			ajax: {
    			dataType: "jsonp",
    			username: "MyUser",
    			password: "MyAuthtoken",
    			data: { "$inlinecount": null }
    			},
    			pageSize: 10
    			});
    			bynameView.refresh();
    			bynameView.nextPage();
    			this.byname = bynameView;
    			this.prevPage = function () {bynameView.prevPage();};
    			this.nextPage = function () {bynameView.nextPage();};
    			}
    
    			$(document).ready(function () {
    			viewModel = new ViewModel();
    			ko.applyBindings(viewModel, $(".container").get(0));
    			});
    			</script>
    		
  3. DataBind: Below is a simple table with some paging buttons, which you can paste into the body section of your markup.
    			
    			<h2>Connect to Live HCL Domino Data in Real Time</h2>
    
    			<h3>ByName</h3>
    			<div>
    				<button title="previous page" class="pagebuttons" data-bind="click: prevPage, button: {}">
    					<span class="ui-icon ui-icon-seek-prev" />
    				</button>
    				<button title="next page" class="pagebuttons" data-bind="click: nextPage, button: {}">
    					<span class="ui-icon ui-icon-seek-next" />
    				</button>
    			</div>
    			<table id="demo-grid" data-bind="wijgrid: { 
          data: byname, 
          showFilter: true, 
          allowPaging: true,
          pagerSettings: { position: 'none'},
          columnsAutogenerationMode: 'append',
        }" >
    			</table>
    		

At this point, you may be prompted to re-enter the username and authtoken. After doing so, a resulting table or grid should appear, as seen below. You can filter and sort through pages of HCL Domino data.

Free Trial & More Information

If you are interested in connecting to your HCL Domino data (or data from any of our other supported data sources) from Wijmo Grid, sign up for a free trial of CData Connect Server today! For more information on Connect Server and to see what other data sources we support, refer to our CData Connect page.