Page History
...
Styleclass | ||
---|---|---|
| ||
Yellowfin Webサービスを対象に開発を行う場合、WSDL定義に対して関数スタブを生成することができます。これらの定義は、http://<yellowfin-server>:<port>/services
(例:http://localhost:8080/services)で見つけることができます。
関数スタブにより、開発者は、ネイティブのプログラミング言語で標準の関数呼び出しを行い、Yellowfinで提供されるWebサービスと直接通信することができます。関数スタブを作成するプロセスでは、Webサービスで必要な他のオブジェクトも生成しなくてはいけません。
Webサービスの例で使用されるいくつかのオブジェクトには、以下のようなものがあります。
AdministrationServiceRequest
- Webサービスに対して行われる呼び出しのタイプを定義するオブジェクトAdministrationServiceResponse
- Webサービスによって返されるオブジェクトAdministrationPerson
- ユーザー情報を含むオブジェクトAdministrationGroup
- グループ情報を含むオブジェクト
Yellowfin WebサービスAPI
Styleclass | ||
---|---|---|
| ||
yfws-<date>.jar」
というJARファイルが付属しています。このファイルは、YellowfinのインストールディレクトリYellowfin\development\lib
にあります。 Yellowfin WebサービスAPIには、あらかじめ生成されたスタブが含まれます。これは、Java、またはJava統合をサポートする他の言語(Cold FusionやLotus Scriptなど)で開発されたアプリケーションで、直接使用することができます。大部分のWebサービスが、標準のJava関数によってまとめられているため、各リクエストを手動で生成する必要がなくなることから、統合が若干容易になります。
Webサービスリクエストの形式は、以下の通りです。
...
Webサービスのインターフェイスは、Webサービスで広く利用されているプロトコルであるSOAPを使用しています。Yellowfinでは、SOAP Webサービスへ接続するために、Java WebサービスAPIを提供していますが、実際には.NETやRuby、Pythonなど、他のプログラミング言語や環境からも接続することが可能です。
Webサービス使用権の有効化
Webサービスを使用するためには、ユーザーロールで対応する機能を有効化しなくてはいけません。
Webサービス呼び出しの実行には、Webサービス管理ユーザーのログイン情報(ユーザー名とパスワード)が必要です。
Java API
Styleclass | ||
---|---|---|
| ||
APIは、Yellowfin Tomcatのもと、JSPを使用することで内部的に呼び出すことができます。サンプルコードは、「yellowfin/development/examples/webservices」フォルダーに格納されています。JSPファイルを「Yellowfin/appserver/webapps/ROOT」フォルダーへコピーし、環境に合わせてJSPファイルのホスト、ポート番号、ユーザー詳細情報を調整します。これを他の言語や環境で複製する前に、まずはこちらの方法を使用して必要なことが実現できるようにすることをお勧めします。
外部的にWebサービスを呼び出すためには、以下が必要です。
- 「development/lib」フォルダー内にある「yfws-<日付>.jar」。注意:Yellowfinをアップグレードしたら、最新の「yfws-xxx.jar」を忘れずに取得してください(対応するファイルは、Yellowfinのウェブサイトからダウンロードすることができます)
- Apache Axis:http://axis.apache.org/axis/ja/
完全なオブジェクト定義は、「Yellowfin/development/doc/webservices/Javadoc/index.html」を参照してください。
Java APIの呼び出し方法には、以下の2つがあります。
あらかじめ作成されたJava関数の使用。これは関数により制限されますが、SSOの実行、レポートのレンダリング、フィルターの適用など、基本的な機能すべてに対応しています。
Tip こちら方法に関するサンプルコードは「development/examples/webservices」フォルダーに格納されています。ファイル名に「api」と記載されているjspファイルを参照してください。まずは、「mobile」と記載されているファイルを、「ROOT」フォルダーにコピーして始めることをお勧めします。
- Yellowfin WSDLからJavaで生成されたスタブを使用して直接SOAPを呼び出し実行。詳細な情報は、以下の項目を展開してください。
Expand | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||
管理サービスやレポートサービスにあるサンプルコードのすべては、JavaでのSOAP呼び出しを使用して説明しています。
管理サービスの初期化: AdministrationServiceService s_adm = new AdministrationServiceServiceLocator(<host>,<port>, <ServicePath>, <ssl>) ; AdministrationServiceSoapBindingStub rssbs_admin = (AdministrationServiceSoapBindingStub) s_adm.getAdminService();
レポートサービスの初期化: ReportServiceService s_rpt = new ReportServiceServiceLocator(<host>, <port>, <ServicePath>, <ssl>); ReportServiceSoapBindingStub rssbs_report = (ReportServiceSoapBindingStub) s_rpt.getReportService();
場所
プライマリーオブジェクトには、以下が含まれています。
|
Webサービスには、以下の2つのグループがあります。
- 管理サービスは、ユーザーとクライアント組織を管理し、シングルサインオンを実行します。これは、任意のYellowfinライセンスで使用することができます。
- レポートサービスは、レポートやダッシュボード定義を読み込み、インターフェイスにレポートを渡します。これには、サーバーライセンスが必要です。
Java以外の言語
Styleclass | ||
---|---|---|
| ||
機能スタブは、Yellowfinが提供するWebサービスと直接通信をするネイティブプログラミング言語で標準の関数を呼び出すことができます。機能スタブを生成するプロセスでは、Webサービスに必要な任意のオブジェクトも生成しなくてはいけません。
Expand | ||
---|---|---|
| ||
.NETの場合は、JAX Webサービスからスタブを生成することをお勧めします。JAX Webサービスは、「http://<yellowfin-host>/webservices/Hello」で接続することができます。以下に、一例を示します。 クライアントを一覧化されたWSDL URLへ接続します。
|
Expand | ||
---|---|---|
| ||
PHPでは、Axis生成WADL(http://<yellowfin-server>:<port>/services)を使用することができます。PHPを使用したSSOの実行は、こちらの例を参照してください。 |
...