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

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

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

最終更新日:2022-06-07

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

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



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

Bitbucket ドライバーのJAR を配布

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

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

    ほとんどのクエリでは、ワークスペースを設定する必要があります。唯一の例外は、Workspacesテーブルです。このテーブルはこのプロパティの設定を必要とせず、クエリを実行すると、Workspaceの設定に使用できるワークスペーススラッグのリストが提供されます。このテーブルにクエリを実行するには、スキーマを'Information'に設定し、SELECT * FROM Workspacesクエリを実行する必要があります。

    Schemaを'Information'に設定すると、一般的な情報が表示されます。Bitbucketに接続するには、以下のパラメータを設定してください。

    • Schema: ワークスペースのユーザー、リポジトリ、プロジェクトなどの一般的な情報を表示するには、これを'Information'に設定します。それ以外の場合は、クエリを実行するリポジトリまたはプロジェクトのスキーマに設定します。利用可能なスキーマの完全なセットを取得するには、sys_schemasテーブルにクエリを実行してください。
    • Workspace: Workspacesテーブルにクエリを実行する場合を除き、必須です。Workspacesテーブルへのクエリにはこのプロパティは必要ありません。そのクエリはWorkspaceの設定に使用できるワークスペーススラッグのリストのみを返すためです。

    Bitbucketでの認証

    BitbucketはOAuth認証のみをサポートしています。すべてのOAuthフローからこの認証を有効にするには、カスタムOAuthアプリケーションを作成し、AuthSchemeをOAuthに設定する必要があります。

    特定の認証ニーズ(デスクトップアプリケーション、Webアプリケーション、ヘッドレスマシン)に必要な接続プロパティについては、ヘルプドキュメントを必ず確認してください。

    カスタムOAuthアプリケーションの作成

    Bitbucketアカウントから、以下のステップを実行します。

    1. 設定(歯車アイコン)に移動し、ワークスペース設定を選択します。
    2. アプリと機能セクションで、OAuthコンシューマーを選択します。
    3. コンシューマーを追加をクリックします。
    4. カスタムアプリケーションの名前と説明を入力します。
    5. コールバックURLを設定します。
      • デスクトップアプリケーションとヘッドレスマシンの場合、http://localhost:33333または任意のポート番号を使用します。ここで設定するURIがCallbackURLプロパティになります。
      • Webアプリケーションの場合、信頼できるリダイレクトURLにコールバックURLを設定します。このURLは、ユーザーがアプリケーションにアクセスが許可されたことを確認するトークンを持って戻るWebの場所です。
    6. クライアント認証情報を使用して認証する予定の場合、これはプライベートコンシューマーですを選択する必要があります。ドライバーでは、AuthSchemeをclientに設定する必要があります。
    7. OAuthアプリケーションに与える権限を選択します。これにより、読み取りおよび書き込みできるデータが決まります。
    8. 新しいカスタムアプリケーションを保存するには、保存をクリックします。
    9. アプリケーションが保存された後、それを選択して設定を表示できます。アプリケーションのKeyとSecretが表示されます。これらを将来の使用のために記録してください。Keyを使用してOAuthClientIdを設定し、Secretを使用してOAuthClientSecretを設定します。
    <Resource name="jdbc/bitbucket" auth="Container" type="javax.sql.DataSource" driverClassName="cdata.jdbc.bitbucket.BitbucketDriver" url="jdbc:bitbucket:Workspace=myworkspaceslug;Schema=Information" maxActive="20" maxIdle="10" maxWait="-1" factory="com.jaspersoft.jasperserver.tomcat.jndi.JSBasicDataSourceFactory"/>
  3. jasperserver-pro Web アプリケーションのweb.xml に以下の参照を追加します。これはアプリケーションの[WEB-INF]サブフォルダに配置されています。 Bitbucket データ JSP jdbc/bitbucket javax.sql.DataSource Container
  4. サーバーを再起動します。

Bitbucket JDBC データソースの作成

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

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

ドメイン の作成

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

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

ドメインにView Based を作成

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

  1. [Create]>[Ad Hoc View]をクリックします。
  2. ダイアログが表示されたら、作成したBitbucket ドメインを選択します。 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 のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。