30日間の無料評価版をお試しいただけます。

以下のwebサービスは、(以前までカテゴリー・サブカテゴリーと表記していた)レポート、ダッシュボード、その他コンテンツを保存するYellowfinのフォルダー・サブフォルダーを管理するために使用します。

こちらのwebサービスは、Yellowfinの閲覧ページのすべてのカテゴリー・サブカテゴリー(現在は、フォルダー・サブフォルダー)を返します。


リクエストパラメーター

以下の要素は、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

Function

String

Webサービス関数です。こちらは、「GETCATEGORIES」に設定します。

OrgRefString特定のクライアント組織上でこのサービスを使用するためのクライアント組織参照IDです。こちらを指定しない場合は、デフォルト組織が選択されます。

リクエストの例

以下は、こちらのリクエストのSOAP XMLの例です。

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
   <soapenv:Header/>
   <soapenv:Body>
    <web:remoteAdministrationCall>
        <arg0>
            <loginId>admin@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <orgRef>org1</orgRef>
            <function>GETCATEGORIES</function>
        </arg0>
    </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>


応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE
ContentResourcesContentResource[]フォルダー・サブフォルダ―の詳細を含むオブジェクト配列です。

応答の例

サービスは今回のSOAPの例に基づき、以下の応答を返します。

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
         <return>
            <contentResources>
               <resourceCode>AUDITREPORTS</resourceCode>
               <resourceDescription>Audit Reports</resourceDescription>
               <resourceId>56339</resourceId>
               <resourceName>Audit Reports</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTCATEGORY</resourceType>
               <resourceUUID>a6bdc6b5-a832-42a2-98c7-18273900d0aa</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>ADMINREPORTS</resourceCode>
               <resourceDescription>Admin Reports</resourceDescription>
               <resourceId>56340</resourceId>
               <resourceName>Admin Reports</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>f7fb32b7-1573-4899-916f-c34afb9a865d</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>CONTENTUSAGE</resourceCode>
               <resourceDescription>Content Usage</resourceDescription>
               <resourceId>56341</resourceId>
               <resourceName>Content Usage</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>6bae5230-c1f9-4491-8a8b-f14b1ae660d7</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>USERACCESS</resourceCode>
               <resourceDescription>User Access</resourceDescription>
               <resourceId>56342</resourceId>
               <resourceName>User Access</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>0c7ddde4-fa03-4e88-b37b-7b5e4aad5e1d</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>TUTORIAL</resourceCode>
               <resourceDescription>Tutorial</resourceDescription>
               <resourceId>60706</resourceId>
               <resourceName>Tutorial</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTCATEGORY</resourceType>
               <resourceUUID>a23c2ec6-a2fa-45c7-b5da-dcf3f02e6633</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>ATHLETES</resourceCode>
               <resourceDescription>Athletes</resourceDescription>
               <resourceId>60707</resourceId>
               <resourceName>Athletes</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>72e4b4bd-a482-4a01-a031-c6ab76dbb3a5</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>CAMP</resourceCode>
               <resourceDescription>Camp</resourceDescription>
               <resourceId>60708</resourceId>
               <resourceName>Camp</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>465411e5-594b-478e-af64-c0f59fc4546f</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>KPIS</resourceCode>
               <resourceDescription>KPIs</resourceDescription>
               <resourceId>60709</resourceId>
               <resourceName>KPIs</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>d514c643-dc01-4781-8905-d34e761ccd19</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>MARKETINGBOOKING</resourceCode>
               <resourceDescription>Marketing &amp; Booking</resourceDescription>
               <resourceId>60710</resourceId>
               <resourceName>Marketing &amp; Booking</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>dbe6d0a3-c088-4d71-b65a-f383aaa54be9</resourceUUID>
            </contentResources>
            <contentResources>
               <resourceCode>TRAINING</resourceCode>
               <resourceDescription>Training</resourceDescription>
               <resourceId>60711</resourceId>
               <resourceName>Training</resourceName>
               <resourceOrgId>1</resourceOrgId>
               <resourceType>RPTSUBCATEGORY</resourceType>
               <resourceUUID>c503ea57-cc69-43a9-98bc-a90ebbe1c864</resourceUUID>
            </contentResources>
            <errorCode>0</errorCode>
            <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
            <messages>Web Service Request Complete</messages>
            <sessionId>fd3afecb73fe48578501f29e4d00065b</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>


手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

  • 管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの関数のリクエストを定義します。

    AdministrationServiceRequest rsr = new AdministrationServiceRequest();
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test"); 
    rsr.setOrgId(1);
    rsr.setFunction("GETCATEGORIES");
  • リクエストを構成したら、呼び出しを実行してサーバをテストします。

    AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);

    管理webサービスを初期化します。実行方法の詳細は、こちらを参照してください。


  • フォルダー・サブフォルダーの詳細を含む応答を取得するために、以下のコードを追加します。(詳細は、上記応答パラメーターの表を参照してください)


    if ("SUCCESS".equals(rs.getStatusCode()) ) {
                    out.write("<br>Success");
                    ContentResource[] cr = rs.getContentResources();
                    for (ContentResource x: cr){
                                        out.write("resourceCode: " + x.getResourceCode() + "<br>");
                                        out.write("resourceDescription: " + x.getResourceDescription() + "<br>");
                                        out.write("resourceId: " + x.getResourceId() + "<br>");
                                        out.write("resourceName: " + x.getResourceName() + "<br>");
                                        out.write("resourceOrgId: " + x.getResourceOrgId() + "<br>");
                                        out.write("resourceType: " + x.getResourceType() + "<br>");
                                        out.write("resourceUUID: " + x.getResourceUUID() + "<br><br>");
                    }
    }
    else {
                    out.write("<br>Failure");
                    out.write(" Code: " + rs.getErrorCode());
    }


完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_getcategories.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_getcategories.jsp」を実行します。

<%          
/*              ws_getcategories.jsp                    */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.hof.util.*, java.util.*, java.text.*" %>
<%@ page import="com.hof.web.form.*" %>
<%@ page import="com.hof.mi.web.service.*" %>
<%
  
AdministrationServiceService s_adm = new AdministrationServiceServiceLocator("localhost",8080, "/services/AdministrationService", false);       // adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
  
rsr.setLoginId("admin@yellowfin.com.au");       // provide your Yellowfin webservices admin account
rsr.setPassword("test");                        // change to be the password of the account above
rsr.setOrgId(1);
rsr.setFunction("GETCATEGORIES");
//rsr.setOrgRef("org1");
  
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
                out.write("<br>Success");
                ContentResource[] cr = rs.getContentResources();
                for (ContentResource x: cr){
                                    out.write("resourceCode: " + x.getResourceCode() + "<br>");
                                    out.write("resourceDescription: " + x.getResourceDescription() + "<br>");
                                    out.write("resourceId: " + x.getResourceId() + "<br>");
                                    out.write("resourceName: " + x.getResourceName() + "<br>");
                                    out.write("resourceOrgId: " + x.getResourceOrgId() + "<br>");
                                    out.write("resourceType: " + x.getResourceType() + "<br>");
                                    out.write("resourceUUID: " + x.getResourceUUID() + "<br><br>");
                }
}
else {
                out.write("<br>Failure");
                out.write(" Code: " + rs.getErrorCode());
}              
%>

こちらのwebサービスは、Yellowfinの閲覧ページのすべてのカテゴリー・サブカテゴリー(現在は、フォルダー・サブフォルダ―)で、(有効化されていない)ドラフト(編集中)モードのものを返します。

注意:Yellowfin 7.3からカテゴリー・サブカテゴリーは、ドラフト(編集中)として保存することができないため、これは古いバージョンのYellowfinにのみ関連する機能です。


リクエストパラメーター

以下の要素は、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

Function

String

Webサービス関数です。こちらは、「GETDRAFTCATEGORIES」に設定します。

OrgRefString特定のクライアント組織上でこのサービスを使用するためのクライアント組織参照IDです。こちらを指定しない場合はデフォルト組織が選択されます。

リクエストの例

以下は、こちらのリクエストのSOAP XMLの例です。

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
   <soapenv:Header/>
   <soapenv:Body>
    <web:remoteAdministrationCall>
        <arg0>
            <loginId>admin@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <orgRef>org1</orgRef>
            <function>GETDRAFTCATEGORIES</function>
        </arg0>
    </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>


応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE
ContentResourcesContentResource[]ドラフト(編集中)のフォルダー・サブフォルダーの詳細を含むオブジェクト配列です。

応答の例

サービスは今回のSOAPの例に基づき、以下の応答を返します。

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
         <return>
            <contentResources>
            <resourceCode>REPORTS</resourceCode>
               <resourceDescription>Reports</resourceDescription>
               <resourceId>73674</resourceId>
               <resourceName>Reports</resourceName>
               <resourceOrgId>13004</resourceOrgId>
               <resourceType>RPTCATEGORY</resourceType>
               <resourceUUID>3bc780d7-6638-4520-b233-77ad6e24ae3d</resourceUUID>
            </contentResources>
            <errorCode>0</errorCode>
            <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
            <messages>Web Service Request Complete</messages>
            <sessionId>3f09ab77656b3632ab05786aa0fa4570</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>


手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

  • 管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの関数のリクエストを定義します。

    AdministrationServiceRequest rsr = new AdministrationServiceRequest();
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test"); 
    rsr.setOrgId(1);
    rsr.setFunction("GETDRAFTCATEGORIES");
  • リクエストを構成したら、呼び出しを実行してサーバをテストします。

    AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);

    管理webサービスを初期化します。実行方法の詳細は、こちらを参照してください。


  • フォルダー・サブフォルダーの詳細を含む応答を取得するために、以下のコードを追加します。(詳細は、上記応答パラメーターの表を参照してください)


    if ("SUCCESS".equals(rs.getStatusCode()) ) {
                    out.write("<br>Success");
                    ContentResource[] cr = rs.getContentResources();
                    for (ContentResource x: cr){
                                        out.write("resourceCode: " + x.getResourceCode() + "<br>");
                                        out.write("resourceDescription: " + x.getResourceDescription() + "<br>");
                                        out.write("resourceId: " + x.getResourceId() + "<br>");
                                        out.write("resourceName: " + x.getResourceName() + "<br>");
                                        out.write("resourceOrgId: " + x.getResourceOrgId() + "<br>");
                                        out.write("resourceType: " + x.getResourceType() + "<br>");
                                        out.write("resourceUUID: " + x.getResourceUUID() + "<br><br>");
                    }
    }
    else {
                    out.write("<br>Failure");
                    out.write(" Code: " + rs.getErrorCode());
    }


完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_getdraftcategories.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_getdraftcategories.jsp」を実行します。

<%          
/*              ws_getdraftcategories.jsp                */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.hof.util.*, java.util.*, java.text.*" %>
<%@ page import="com.hof.web.form.*" %>
<%@ page import="com.hof.mi.web.service.*" %>
<%
  
AdministrationServiceService s_adm = new AdministrationServiceServiceLocator("localhost",8080, "/services/AdministrationService", false);       // adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
  
rsr.setLoginId("admin@yellowfin.com.au");       // provide your Yellowfin web services admin account
rsr.setPassword("test");                        // change to the password of the account above
rsr.setOrgId(1);
rsr.setFunction("GETDRAFTCATEGORIES");
//rsr.setOrgRef("org1");
  
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
                out.write("<br>Success");
                ContentResource[] cr = rs.getContentResources();
                for (ContentResource x: cr){
                                    out.write("resourceCode: " + x.getResourceCode() + "<br>");
                                    out.write("resourceDescription: " + x.getResourceDescription() + "<br>");
                                    out.write("resourceId: " + x.getResourceId() + "<br>");
                                    out.write("resourceName: " + x.getResourceName() + "<br>");
                                    out.write("resourceOrgId: " + x.getResourceOrgId() + "<br>");
                                    out.write("resourceType: " + x.getResourceType() + "<br>");
                                    out.write("resourceUUID: " + x.getResourceUUID() + "<br><br>");
                }
}
else {
                out.write("<br>Failure");
                out.write(" Code: " + rs.getErrorCode());
}              
%>

こちらのwebサービスは、Yellowfinの閲覧ページから特定のカテゴリー・サブカテゴリー(現在は、フォルダー・サブフォルダー)を削除します。


リクエストパラメーター

以下の要素は、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

Function

String

Webサービス関数です。こちらは、「DELETECATEGORY」に設定します。

ContentResourcesContentResource[]削除するカテゴリー(フォルダー)の説明を含むContent Resourcesのオブジェクト配列です。以下の表を参照してください。
OrgRefString特定のクライアント組織上でこのサービスを使用するためのクライアント組織参照IDです。こちらを指定しない場合はデフォルト組織が選択されます。


以下はContentResourceオブジェクト内で提供される必須パラメーターです。

ContetTypeFavouriteTypeCreationCode

ResourceType

String

コンテンツのタイプを指定します。これはRPTCATEGORY、またはRPTSUBCATEGORYのいずれかを設定します。

ResourceCode

String

コンテンツタイプに固有のコードです。

ヒント:ResourceCodeが不明の場合は、GETCATEGORIESの呼び出しを実行するか、Yellowfinのデータベースを直接検索することで見つけることができます。

以下の場合は、RefTypeCode IN(「RPTCATEGORY」、「RPTSUBCATEGORY」)を使用して、orgReferenceCodeDesデータベーステーブルにフィルターを適用します。

  • ShortDescriptionがフォルダー・サブフォルダー名
  • RefTypeCoderesourceType
  • RefCoderesourceCode

リクエストの例

以下は、こちらのリクエストのSOAP XMLの例です。

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
   <soapenv:Header/>
   <soapenv:Body>
    <web:remoteAdministrationCall>
        <arg0>
            <loginId>admin@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <orgRef>org1</orgRef>
            <function>DELETECATEGORY</function>
            <contentResources>
                <resourceTyp>RPTSUBCATEGORY</resourceTyp>
                <resourceCode>SUBCAT2ORG1</resourceCode>
            </contentResources>
        </arg0>
    </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>


応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE

応答の例

サービスは今回のSOAPの例に基づき、以下の応答を返します。

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
    <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
        <return>
            <errorCode>0</errorCode>
            <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
            <messages>Web Service Request Complete</messages>
            <sessionId>359f5fce5ce26028acb2432720995a62</sessionId>
            <statusCode>SUCCESS</statusCode>
        </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>


手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

  • 管理ユーザーとしてのログインと、実行するwebサービスの呼び出しの指定を含む、こちらの関数のリクエストを定義します。

    AdministrationServiceRequest rsr = new AdministrationServiceRequest();
    rsr.setLoginId("admin@yellowfin.com.au");
    rsr.setPassword("test"); 
    rsr.setOrgId(1);
    rsr.setFunction("DELETECATEGORY");
  • 削除するカテゴリー、またはフォルダーの詳細を渡します。


    ContentResource[] cr = new ContentResource[1];
    cr[0] = new ContentResource();
    cr[0].setResourceType("RPTSUBCATEGORY");
    cr[0].setResourceCode("SUBCAT2ORG1");           // my sub category or subcategory code
      
    rsr.setContentResources(cr);
  • リクエストを構成したら、呼び出しを実行してサーバをテストします。

    AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);

    管理webサービスを初期化します。実行方法の詳細は、こちらを参照してください。


  • StatusCodeを含む応答を取得するために、以下のコードを追加します。(詳細は、上記応答パラメーターの表を参照してください)


    if ("SUCCESS".equals(rs.getStatusCode()) ) {
                    out.write("<br>Success");
                    }
                    else {
                    out.write("<br>Failure");
                    out.write(" Code: " + rs.getErrorCode());
                    }


完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_deletecategory.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_deletecategory.jsp」を実行します。

<%          
/*              ws_deletecategory.jsp                       */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.hof.util.*, java.util.*, java.text.*" %>
<%@ page import="com.hof.web.form.*" %>
<%@ page import="com.hof.mi.web.service.*" %>
<%
  
AdministrationServiceService s_adm = new AdministrationServiceServiceLocator("localhost",8080, "/services/AdministrationService", false);       // adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
  
rsr.setLoginId("admin@yellowfin.com.au");       // provide your Yellowfin webservices admin account
rsr.setPassword("test");                        // change to the password of the account above
rsr.setOrgId(1);
rsr.setFunction("DELETECATEGORY");
rsr.setOrgRef("org1");
  
ContentResource[] cr = new ContentResource[1];
cr[0] = new ContentResource();
cr[0].setResourceType("RPTSUBCATEGORY");
cr[0].setResourceCode("SUBCAT2ORG1");           // my sub category or subcategory code
  
rsr.setContentResources(cr);
  
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
  
if ("SUCCESS".equals(rs.getStatusCode()) ) {
                out.write("<br>Success");
                }
                else {
                out.write("<br>Failure");
                out.write(" Code: " + rs.getErrorCode());
                }              
%>

このwebサービスの呼び出しを使用して、個人またはグループのREADレコードを特定のコンテンツIDに追加します。適切な個人、またはグループにアクセスを付与するには、AdministrationPerson、またはAdministrationGroup オブジェクトのいずれかが必要です。


リクエストパラメーター

以下の要素は、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

OrgRefString特定のクライアント組織上でこのサービスを使用するためのクライアント組織参照IDです。こちらを指定しない場合はデフォルト組織が選択されます。

Function

String

Webサービス関数です。こちらは、「ADDTOACL」に設定します。

ParametersString Array

ここでは2つのパラメーターを使用できます。

  1. アクセスが必要なコンテンツのContentManagementId Integerです。このパラメーターは常に必要です。
  2. コンテンツに付与されるアクセスレベルです。String(「READ」、「UPDATE」、「DELETE」)を使用します。このパラメーターの設定はオプションで、パラメーターが渡されない場合、デフォルトでは「READ」に設定されます。
AdministrationPersonInteger

アクセスを付与するユーザーです。アクセスを付与するためにユーザーのIpId Integerを使用します。

これは<group>が渡される場合は、パラメーターとして渡す必要はありません。

AdministrationGroupInteger

アクセスを付与するグループです。アクセスを付与するためにグループのGroupId Integerを使用します。

これは<person>が渡される場合は、パラメーターとして渡す必要はありません。


リクエストの例

以下は、こちらのリクエストのSOAP XMLの例です。

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:remoteAdministrationCall>
         <arg0>
            <loginId>dev@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <function>ADDTOACL</function>
            <parameters>
               <Item>79303</Item>
           <Item>DELETE</Item>
            </parameters>
            <group>
               <AdministrationGroup>13402</AdministrationGroup>
            </group>
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>


応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE

応答の例

サービスは今回のSOAPの例に基づき、以下の応答を返します。

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
         <return>
            <errorCode>0</errorCode>
            <messages>Successfully Authenticated User: dev@yellowfin.com.au</messages>
            <messages>Web Service Request Complete</messages>
            <sessionId>9204e289ced6e9ea7ed52b3cc5765663</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>


手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

  1. Yellowfin webservices APIを使用するのではなく、Javaで生成されたスタブを使用して、シングルサインオンの基本リクエストを開始します。

    AdministrationServiceRequest rsr = new AdministrationServiceRequest();
     
    rsr.setLoginId("dev@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);


  2. コンテンツカテゴリー(コンテンツフォルダー)をContentManagementIdとともリストアップし、呼び出しを実行します。

    rsr.setFunction("GETCONTENT");
        rsr.setParameters(new String[] {
                "CATEGORIES"
                });
         
        rs = rssbs.remoteAdministrationCall(rsr);
        
        for (ContentResource cr : rs.getContentResources()) {
            out.write("ResourceId: " + cr.getResourceId() + "<BR>");
            out.write("Resource Name: " + cr.getResourceName() + "<BR>");
            out.write("Resource Description: " + cr.getResourceDescription() + "<BR>");
            out.write("Resource Code: " + cr.getResourceCode()+ "<BR>");
            out.write("Resource UUID: " + cr.getResourceUUID()+ "<BR>");
            out.write("Resource Type: " + cr.getResourceType()+ "<BR><BR>");
        }


  3. ACLに追加します。

    out.write("Adding to ACL <BR>");
    rsr.setFunction("ADDTOACL");


  4. サブカテゴリー(サブフォルダー)のContentManagement IDパラメーターを設定します。

    rsr.setParameters(new String[] {
               "79303",
               "READ"
               });


  5. アクセスレベルを付与するために、個人またはグループを渡します。

    boolean forGroup = true;
     
     if (forGroup) {
       AdministrationGroup ag = new AdministrationGroup();
       ag.setGroupId(13402);
       rsr.setGroup(ag);
     } else {
       AdministrationPerson ap = new AdministrationPerson();
       ap.setUserId("dev@yellowfin.com.au");
       ap.setPassword("test");
       rsr.setPerson(ap);
     }


  6. リモートwebサービス呼び出しを実行し、個人またはグループの新しいステータスを返します。

    rs = rssbs.remoteAdministrationCall(rsr);
     
    out.write("Status: " + rs.getStatusCode())



完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_addtoacl.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザー、クライアント組織の詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_addtoacl.jsp」を実行します。

<%           
/*              ws_addtoacl.jsp              */
%>
 
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.hof.util.*, java.util.*, java.text.*" %>
<%@ page import="com.hof.web.form.*" %>
<%@ page import="com.hof.mi.web.service.*" %>
<%
 
 
     AdministrationServiceResponse rs = null;
     AdministrationServiceRequest rsr = new AdministrationServiceRequest();
     AdministrationServiceService ts = new AdministrationServiceServiceLocator("localhost", 8080, "/services/AdministrationService", false);
     AdministrationServiceSoapBindingStub rssbs = (AdministrationServiceSoapBindingStub) ts.getAdministrationService();
      
     rsr.setLoginId("dev@yellowfin.com.au");
     rsr.setPassword("test");
     rsr.setOrgId(new Integer(1));
     rsr.setFunction("GETCONTENT");
     rsr.setParameters(new String[] {
             "CATEGORIES"
             });
      
     rs = rssbs.remoteAdministrationCall(rsr);
     
     for (ContentResource cr : rs.getContentResources()) {
         out.write("ResourceId: " + cr.getResourceId() + "<BR>");
         out.write("Resource Name: " + cr.getResourceName() + "<BR>");
         out.write("Resource Description: " + cr.getResourceDescription() + "<BR>");
         out.write("Resource Code: " + cr.getResourceCode()+ "<BR>");
         out.write("Resource UUID: " + cr.getResourceUUID()+ "<BR>");
         out.write("Resource Type: " + cr.getResourceType()+ "<BR><BR>");
     }
   
      
         out.write("Adding to ACL <BR>");
         rsr.setFunction("ADDTOACL");
 
 
      
     rsr.setParameters(new String[] {
             "79303",
             "READ"
             });
      
     boolean forGroup = true;
    
     if (forGroup) {
       AdministrationGroup ag = new AdministrationGroup();
       ag.setGroupId(13402);
       rsr.setGroup(ag);
     } else {
       AdministrationPerson ap = new AdministrationPerson();
       ap.setUserId("dev@yellowfin.com.au");
       ap.setPassword("test");
       rsr.setPerson(ap);
     }
      
     rs = rssbs.remoteAdministrationCall(rsr);
 
     out.write("Status: " + rs.getStatusCode());
%>

このwebサービスの呼び出しを使用して、特定のコンテンツIDから個人またはグループのアクセスを削除します。アクセスを削除するには、AdministrationPerson、またはAdministrationGroup オブジェクトのいずれかが必要です。


リクエストパラメーター

以下の要素は、こちらのリクエストとともに渡されます。

リクエスト要素データ型説明

LoginId

String

Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。

このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。

Password

String

上記アカウントのパスワードです。

OrgId

Integer

Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。

OrgRefString特定のクライアント組織上でこのサービスを使用するためのクライアント組織参照IDです。こちらを指定しない場合はデフォルト組織が選択されます。

Function

String

Webサービス関数です。こちらは、「DELETEFROMACL」に設定します。

ParametersString Array

アクセスを無効にするコンテンツのContentManagementId Integerです。このパラメーターは常に必要です。

AdministrationPersonInteger

アクセスを付与するユーザーです。アクセスを付与するためにユーザーのIpId Integerを使用します。

これは<group>が渡される場合は、パラメーターとして渡す必要はありません。

AdministrationGroupInteger

アクセスを付与するグループです。アクセスを付与するためにグループのGroupId Integerを使用します。

これは<person>が渡される場合は、パラメーターとして渡す必要はありません。


リクエストの例

以下は、こちらのリクエストのSOAP XMLの例です。

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <web:remoteAdministrationCall>
         <arg0>
            <loginId>dev@yellowfin.com.au</loginId>
            <password>test</password>
            <orgId>1</orgId>
            <function>DELETEFROMACL</function>
            <parameters>
               <Item>79303</Item>
            </parameters>
            <group>
               <AdministrationGroup>13402</AdministrationGroup>
            </group>
         </arg0>
      </web:remoteAdministrationCall>
   </soapenv:Body>
</soapenv:Envelope>


応答パラメーター

返される応答には、これらのパラメーターが含まれます。

応答要素データ型説明

StatusCode

String

Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。

  • SUCCESS
  • FAILURE

応答の例

サービスは今回のSOAPの例に基づき、以下の応答を返します。

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
   <S:Body>
      <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
         <return>
            <errorCode>0</errorCode>
            <messages>Successfully Authenticated User: dev@yellowfin.com.au</messages>
            <messages>Web Service Request Complete</messages>
            <sessionId>9204e289ced6e9ea7ed52b3cc5765663</sessionId>
            <statusCode>SUCCESS</statusCode>
         </return>
      </ns2:remoteAdministrationCallResponse>
   </S:Body>
</S:Envelope>


手順

Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。

  1. Yellowfin webservices APIを使用するのではなく、Javaで生成されたスタブを使用して、シングルサインオンの基本リクエストを開始します。

    AdministrationServiceRequest rsr = new AdministrationServiceRequest();
     
    rsr.setLoginId("dev@yellowfin.com.au");
    rsr.setPassword("test");
    rsr.setOrgId(1);


  2. コンテンツカテゴリー(コンテンツフォルダー)をContentManagementIdとともリストアップし、呼び出しを実行します。

    rsr.setFunction("GETCONTENT");
        rsr.setParameters(new String[] {
                "CATEGORIES"
                });
         
        rs = rssbs.remoteAdministrationCall(rsr);
        
        for (ContentResource cr : rs.getContentResources()) {
            out.write("ResourceId: " + cr.getResourceId() + "<BR>");
            out.write("Resource Name: " + cr.getResourceName() + "<BR>");
            out.write("Resource Description: " + cr.getResourceDescription() + "<BR>");
            out.write("Resource Code: " + cr.getResourceCode()+ "<BR>");
            out.write("Resource UUID: " + cr.getResourceUUID()+ "<BR>");
            out.write("Resource Type: " + cr.getResourceType()+ "<BR><BR>");
        }


  3. DELETEの呼び出しを追加します。

    out.write("Deleting from ACL <BR>");
    rsr.setFunction("DELETEFROMACL");


  4. サブカテゴリー(サブフォルダー)のContentManagement IDパラメーターを設定します。

    rsr.setParameters(new String[] {
        "79303"
    });


  5. アクセスレベルを付与するために、個人またはグループを渡します。

    boolean forGroup = true;
     
     if (forGroup) {
       AdministrationGroup ag = new AdministrationGroup();
       ag.setGroupId(13402);
       rsr.setGroup(ag);
     } else {
       AdministrationPerson ap = new AdministrationPerson();
       ap.setUserId("dev@yellowfin.com.au");
       ap.setPassword("test");
       rsr.setPerson(ap);
     }


  6. リモートwebサービス呼び出しを実行し、個人またはグループの新しいステータスを返します。

    rs = rssbs.remoteAdministrationCall(rsr);
     
    out.write("Status: " + rs.getStatusCode())



完成例

以下は、こちらのwebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。

  1. コードをコピーして、「ws_deletefromacl.jsp」として保存します。
  2. root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
  3. 環境に応じて、ホスト、ポート番号、管理ユーザー、クライアント組織の詳細を調整します。
  4. インターネットブラウザから、「http://<host>:<port>/ws_deletefromacl.jsp」を実行します。

<%           
/*              ws_deletefromacl.jsp              */
%>
 
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.hof.util.*, java.util.*, java.text.*" %>
<%@ page import="com.hof.web.form.*" %>
<%@ page import="com.hof.mi.web.service.*" %>
<%
 
     AdministrationServiceResponse rs = null;
     AdministrationServiceRequest rsr = new AdministrationServiceRequest();
     AdministrationServiceService ts = new AdministrationServiceServiceLocator("localhost", 8080, "/services/AdministrationService", false);
     AdministrationServiceSoapBindingStub rssbs = (AdministrationServiceSoapBindingStub) ts.getAdministrationService();
      
     rsr.setLoginId("dev@yellowfin.com.au");
     rsr.setPassword("test");
     rsr.setOrgId(new Integer(1));
     rsr.setFunction("GETCONTENT");
     rsr.setParameters(new String[] {
             "CATEGORIES"
             });
      
     rs = rssbs.remoteAdministrationCall(rsr);
     
     for (ContentResource cr : rs.getContentResources()) {
         out.write("ResourceId: " + cr.getResourceId() + "<BR>");
         out.write("Resource Name: " + cr.getResourceName() + "<BR>");
         out.write("Resource Description: " + cr.getResourceDescription() + "<BR>");
         out.write("Resource Code: " + cr.getResourceCode()+ "<BR>");
         out.write("Resource UUID: " + cr.getResourceUUID()+ "<BR>");
         out.write("Resource Type: " + cr.getResourceType()+ "<BR><BR>");
     }
   
      
         out.write("Deleting from ACL <BR>");
         rsr.setFunction("DELETEFROMACL");
 
      
     rsr.setParameters(new String[] {
             "79303"
     });
      
     boolean forGroup = true;
    
     if (forGroup) {
       AdministrationGroup ag = new AdministrationGroup();
       ag.setGroupId(13402);
       rsr.setGroup(ag);
     } else {
       AdministrationPerson ap = new AdministrationPerson();
       ap.setUserId("dev@yellowfin.com.au");
       ap.setPassword("test");
       rsr.setPerson(ap);
     }
      
     rs = rssbs.remoteAdministrationCall(rsr);
 
     out.write("Status: " + rs.getStatusCode());
%>