JasperReports Server で HCL Domino に連携する帳票を作成

CData JDBC ドライバをJasperReports Server に配置して、Jasper Studio でリアルタイムHCL Domino のデータを連携利用する帳票を作ろう。

加藤龍彦
デジタルマーケティング

最終更新日:2022-06-07

この記事で実現できるHCL Domino 連携のシナリオ

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。



CData JDBC Driver for Domino は企業全体のHCL Domino へのデータ連携を可能にします。この記事では、JasperReports server にドライバーを配布してレポーティングドメイン、ビルディングブロックを作成し、ad hoc 帳票を作成する方法を説明します。

HCL Domino ドライバーのJAR を配布

下記の手順に従って、ドライバーのJAR をJasperReports server に配置します。標準的なプロセスに従って、JNDI データソースをTomcat またはJBoss に配布できます。以下の説明にはHCL Domino およびJasperReports Server にバンドルされたTomcat server の詳細が含まれます。

  1. インストールディレクトリの[lib]サブフォルダ内のドライバーJAR およびlic ファイルを、apache-tomcat フォルダの[lib]サブフォルダにコピーします。
  2. 以下のリソースエントリーをjasperserver-pro Web アプリケーションのcontext.xml に追加します。これはアプリケーションの[META-INF]サブフォルダに配置されています。必要な接続プロパティをJDBC URL に指定します。

    Domino への接続

    Domino のデータに接続するには、以下のプロパティを設定してください。

    • URL: Domino データベースをホスティングしているサーバーのホスト名、またはIP を入力します。サーバーのポート番号を含めてください。例えば、http://sampleserver:1234/
    • DatabaseScope: Domino Web UI 内のスコープ名を入力します。ドライバーは、ここで指定したスコープによって制御されるスキーマの、フォームとビューを公開します。Domino Admin UI で、サイドバーからScopes メニューを選択します。このプロパティを、既存のスコープ名に設定します。

    Domino での認証

    Domino は、ログインクレデンシャルまたはAzure Active Directory OAuth アプリケーションを使用した認証をサポートしています。

    ログインクレデンシャル

    ログインクレデンシャルで認証するには、以下のプロパティを設定してください:

    • AuthScheme: これを"OAuthPassword" に設定します
    • User: 認証するDomino ユーザーのユーザー名
    • Password: 認証するDominoユ ーザーに関連付けられたパスワード

    ドライバーはログインクレデンシャルを使用して、自動的にOAuth トークン交換を実行します。

    AzureAD

    この認証方法は、Azure Active Directory をIdP として使用してJWTトークンを取得します。Azure Active Directory にカスタムのアプリケーションを作成し、それをIdP として設定する必要があります。そのためには、ヘルプドキュメントの指示に従ってください。その後、以下のプロパティを設定します。

    • AuthScheme: これを"AzureAD" に設定します
    • InitiateOAuth: これをGETANDREFRESH に設定します。InitiateOAuth を使用すると、OAuth 交換の繰り返しやOAuthAccessToken の手動設定を避けることができます。
    • OAuthClientId: カスタムOAuth アプリケーションのセットアップ時に取得したクライアントID
    • OAuthClientSecret: カスタムOAuth アプリケーションのセットアップ時に取得したクライアントシークレット
    • CallbackURL: アプリ登録時に定義したリダイレクトURI。例えば、https://localhost:33333
    • AzureTenant: データにアクセスするために使用されるMicrosoft Online テナント。companyname.microsoft.com 形式の値またはテナントID のいずれかを指定してください。

      テナントID は、Azure ポータルのAzure Active Directory > プロパティページに表示されているディレクトリID と同じです。

    <Resource name="jdbc/domino" auth="Container" type="javax.sql.DataSource" driverClassName="cdata.jdbc.domino.DominoDriver" url="jdbc:domino:Server=https://domino.corp.com;Database=names.nsf;Port=3002;SSLClientCertType=PEMKEY_FILE;SSLClientCert=full_path_of_certificate.pem;SSLServerCert=*" maxActive="20" maxIdle="10" maxWait="-1" factory="com.jaspersoft.jasperserver.tomcat.jndi.JSBasicDataSourceFactory"/>
  3. jasperserver-pro Web アプリケーションのweb.xml に以下の参照を追加します。これはアプリケーションの[WEB-INF]サブフォルダに配置されています。 HCL Domino データ JSP jdbc/domino javax.sql.DataSource Container
  4. サーバーを再起動します。

HCL Domino JDBC データソースの作成

ドライバーを配布したら、JNDI 接続を作成してバンドルされたあらゆるドライバーと同じように接続できます。

  1. JasperReports Server にログインして[Create]>[Data Source]をクリックします。
  2. [Type]メニューで[JNDI Data Source]を選択します。
  3. [Service Name]ボックスにHCL Domino に定義したJDNI ルックアップを入力します。例では、ルックアップは jdbc/domino です。

ドメイン の作成

データのドメインはJaspersoft のメタデータレイヤです。アドホックな分析および帳票で使うことができます。

  1. [Create]>[Domain]をクリックし、ドメインにID を入力します。
  2. [Data Source]セクションで[ブラウズ]をクリックし、作成したHCL Domino のデータソースを選択します。
  3. [Domain Design]セクションで[Create with Database Designer]をクリックします。[Select Database Schema]ダイアログが表示されます。
  4. HCL Domino のデータソースを選択します。
  5. [Tables]タブの[Data Source]ペインでテーブルを選択し、矢印をクリックして[Selected Tables]に追加します。 Tables to add on the Tables tab in the Domain Designer. (Salesforce is shown.)
  6. [Display]タブの[Resources]ペインでHCL Domino エンティティを選択し、矢印をクリックしてリソースを[Sets and Items]ペインに追加します。 Resources to add on the Display tab in the Domain Designer. (Salesforce is shown.)

ドメインにView Based を作成

ドメインを使ってHCL Domino のビジネスビューを作成したら、データに関連あるサブセットを表示するビューを作成します。下記の手順に従って、[Ad Hoc Editor]の[Ad Hoc view]にビューを作成します。

  1. [Create]>[Ad Hoc View]をクリックします。
  2. ダイアログが表示されたら、作成したHCL Domino ドメインを選択します。 The domain to be used for the view. (Salesforce is shown.)
  3. [Choose Data]ページで、ビューで使いたいカラムを選択します。[Select Fields]セクションでは、フィルターおよび入力用のプロンプトユーザーを作成できます。[Display]セクションでは、フィールドおよびフィールド名の並び順を変更できます。 The columns to be used in the report. (Salesforce is shown.)
  4. ウィザードを完了したら、ビューの種類を選択しビューにカラムを追加できます。JasperSoft はドライバーのメタデータを使って、利用可能なdimensions およびmeasures をデータの種類に基づいて検出します。 [Columns] および[Rows]ボックスにdimensions およびmeasures をドラッグします。例えば、チャートを作成するには[Columns]ボックスに[excol#1]を、[Rows]ボックスに[excol#2]をドラッグします。
  5. ビューを保存します。

帳票の作成

これでドメインから帳票を作成できます:

A report based on live data. (Salesforce is shown.)

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。