各製品の資料を入手。
詳細はこちら →SpagoBI でXML に連携
SpagoBI Studio でリアルタイムXML にフィーチャーしたレポートを作成します。ホストのXML はSpagoBI サーバーを報告します。
最終更新日:2022-06-13
この記事で実現できるXML 連携のシナリオ
こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
CData JDBC Driver for XML はJDBC 標準をサポートするビジネスインテリジェンスおよびデータマイニングツールからリアルタイムXML に接続することを可能にします。この記事では、XML をSpagoBI Studio のレポートに統合し、SpagoBI サーバーでホストする方法を説明します。
SpagoBI サーバーのJDBC ドライバーをデプロイ
以下のステップに従ってSpagoBI サーバーでJDBC data source for XML を作成します。
- ドライバーJAR を%CATALINA_BASE%/lib にコピーします。これらのファイルは、インストールディレクトリのlib サブフォルダにあります。
XML ドライバーリソースをコンテクストに追加します。以下のリソース定義をserver.xml の[GlobalNamingResources]要素に追加できます。
<Resource name="jdbc/xml" auth="Container" type="javax.sql.DataSource" driverclassname="cdata.jdbc.xml.XMLDriver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" maxactive="20" maxidle="10" maxwait="-1"/>
- 以下のリソースリンクを追加し、Web アプリケーションへのアクセスを許可します。この記事では、SpagoBI のMETA-INF\context.xml に次の行を追加します。
<ResourceLink global="jdbc/xml" name="jdbc/xml" type="javax.sql.DataSource"/>
- サーバーを再起動します。
SpagoBI サーバーのリソースにドライバーを追加した後、データソースを追加します。SpagoBIで[Resources]->[Data Source]->[Add]と進み、以下の情報を入力します。
- Label:ドライバーに独特の識別子を入力します。
- Description:ドライバーにディスクリプションを入力します。
- Dialect:デフォルトの方言を選択します。
- Read Only:読み取り専用オプションを選択します。このオプションは、データソースがエンドユーザーによって作成された、データセットを保存するためのデフォルトデータベースであるかどうかを決定します。
- Type:[JDBC]を選択します。
- URL:
- 必要な接続文字列プロパティを使用してJDBC URLを入力します。
データソースを認証するには、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。 データプロバイダーはXML API を双方向データベーステーブルとしてモデル化し、XML ファイルをread-only ビュー(ローカルファイル、人気のクラウドサービスに格納されたファイル、およびFTP サーバー)としてモデル化します。 HTTP Basic、Digest、NTLM、OAuth、およびFTP を含む主な認証スキームはサポートされています。認証のガイドについては、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。
URI と認証値を設定した後で、DataModel を設定することでデータの構造によりよくマッチするようデータの抽象化を調整できます。
DataModel プロパティはデータがどのようにテーブルとして抽象化されるかを制御するプロパティであり、次の基本的な設定を調整します。
- Document(デフォルト):XML データのトップレベルのドキュメントビューをモデル化します。データプロバイダーは入れ子化した要素をデータの集約値として返します。
- FlattenedDocuments:入れ子化したドキュメントとその親を結合して単一のテーブルに入力します。
- Relational:個別の関連テーブルを階層化されたデータから返します。テーブルは主キーと、親ドキュメントにリンクする外部キーを含みます。
リレーショナルな抽象化の設定についての詳細は、「XML データのモデリング」セクションを参照してください。次の例で使用されているサンプルデータも存在します。 このデータには、人名、その人たちが所有する車、車に施されたさまざまなメンテナンスに関する情報が含まれます。
ビルトイン接続文字列デザイナ
JDBC URL の構成については、XML JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.xml.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
以下は一般的なJDBC URL です。
jdbc:xml:URI=C:/people.xml;DataModel=Relational;
- Driver:ドライバーのクラス名にcdata.jdbc.xml.XMLDriver を入力します。

SpagoBI Studio でレポートを作成
以下のステップに従い、SpagoBI StudioでXML に基づいたレポートを作成します。SQL クエリの結果をチャートに挿入するデータセットを作成します。次のセクションでは、このレポートをSpagoBI サーバーでホストします。
初めに、SpagoBI Studio のレポートからXML に接続してください。
- SpagoBI Studio で、[File]->[New]->[Project]とクリックしていき、[Business Intelligence and Reporting Tools]フォルダで[Report Project]を選択します。
- [File]->[New]->[Report]と進み、[Blank Report]を選択します。
- [Data Explorer]ビューで[Data Sources]を右クリックし、[New Data Source]をクリックします。
- [JDBC Data Source]を選択し、データソース名を入力します。
- [Manage Drivers]をクリックし、[Add]をクリックしてドライバーJAR(cdata.jdbc.xml.jar) を追加します。
- ドライバーJAR は、インストールディレクトリのlib サブフォルダにあります。
- [Driver Class]メニューでドライバークラス(cdata.jdbc.xml.XMLDriver)を選択します。
- [Database URL]ボックスに、[JDBC URL]を入力します。以下は一般的な接続文字列です。
jdbc:xml:URI=C:/people.xml;DataModel=Relational;
必要な接続プロパティを取得するためのガイドについては、ドライバーヘルプの[Getting Started]チャプターを見てください。
XML に接続した後、SQL クエリの結果を含むデータセットを作成します。
- [DataSet]フォルダを右クリックし、[New Data Set]をクリックします。JDBC data source for XML を選択し、データセットの名称を入力します。
- SQL クエリを構築します。ここでは、このクエリを使用してダッシュボードにチャートを追加します。例:
SELECT [people].[personal.age] AS age, [people].[personal.gender] AS gender, [people].[personal.name.first] AS first_name, [people].[personal.name.last] AS last_name, [vehicles].[model], FROM [people] JOIN [vehicles] ON [people].[_id] = [vehicles].[people_id]
データセットを使用して、レポートオブジェクトにデータを入力できます。以下のステップに従って、チャートを作成します。
- [Palette]ビューで、チャートをキャンバスにドラッグします。
- [Select Chart Type]タブで棒グラフを選択します。
- [Select Data]タブで[Use Data From]オプションをクリックし、メニューからXML のデータセットを選択します。
- [ personal.name.first ] をテーブルからx 軸の系列にドラッグします。
- [ personal.name.last ] をテーブルからy 軸の系列にドラッグします。
SpagoBI サーバーに関するホストXML レポート
以下のステップに従って、SpagoBI サーバーでリアルタイムXML に基づいてドキュメントをホストできます。前のセクションで作成したレポートをテンプレートとして使用します。レポートユーザーがリアルタイムデータにアクセスできるようにするには、サーバー上のXML JDBC データソースに置き換えられるプレースホルダパラメータを作成します。
- 未実行の場合、SpagoBI Studio で[Report Design]パースペクティブで開きます。
- [Data Explorer]ビューで[Report Parameters]フォルダを右クリックし、[New Parameter]をクリックします。url パラメータを追加し、それに空の値を割り当てます。このパラメータはSpagoBI サーバー上のJDBC データソースのプレースホルダです。
- XML のデータソースを右クリックし、[Edit]をクリックします。
-
[Property Binding]ノードで、JDBC Driver のURL バインディングプロパティurl パラメータに設定します。プロパティのボックスをクリックします。[Category]セクションで[Report Parameters]を選択します。[Subcategory]セクションで[All]を選択し、パラメータをダブルクリックします。
JavaScript構文に以下のように入力することもできます。
params["url"].value
続いて、SpagoBI サーバーでレポート用の新しいドキュメントを作成します。
- SpagoBI サーバーで、[Documents Development]->[Create Document]->[Generic Document]と進みます。[Document Details]ページが表示されます。
- 以下の情報を入力し、ドキュメントを作成します。
- Label:ドキュメントに独自の識別子を入力します。
- Name:ドキュメントのわかりやすい名前を入力します。
- Type:メニューから[Report]を選択します。
- Engine:[BIRT Report Engine]を選択します。
- Data Source:SpagoBI サーバーのCreate a JDBC Data Source for XML で作成したXML Data Source を選択します。
- [Show Document Templates]セクションで、ドキュメントを格納したいフォルダを選択します。
[Template]セクションで、[Choose File]をクリックします。レポートプロジェクトを含むフォルダに移動します。.rptdesign ファイルを選択します。
Noteプロジェクトへのパスは、プロジェクトプロパティで確認できます。
- [Save]ボタンをクリックします。

サーバーでレポートを実行すると、プレースホルダurl パラメータがサーバーで定義されたJDBC URL に置き換えられます。
