ユーザーグループとロールは、こちらの項目で紹介するwebサービスの呼び出しを使用して、作成、または変更をすることができます。
注意:「システム構成」ページで「クライアント組織」機能が有効になっている場合で、特定のタイプの呼び出しが適用可能な場合は、クライアント組織を指定することもできます。
注意:「システム構成」ページで「クライアント組織」機能を有効にすることで、特定タイプの呼び出しでは適用可能な場合に、クライアント組織を指定することができます。
ユーザーロール関数
これらの webサービスは、Yellowfinのユーザーロールに特化しています。
Note |
---|
LDAP認証を使用する場合、ロールを返す任意のwebサービスは、LDAPユーザーが最後に正常にログインしたロールを返します。(このロールは、LDAPユーザーがログインをする度に更新されます。) |
Expand |
---|
|
こちらの関数は、Yellowfinで利用可能なすべてのユーザーロールを返します。応答は、利用可能なロールを表示するAdministrationRoleオブジェクトの配列が含まれます。こちらの関数は、Yellowfinで利用可能なすべてのユーザーロールを返します。応答は、利用可能なロールを表示する、AdministrationRoleオブジェクトの配列を含みます。
リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「LISTROLES」に設定します。 |
リクエストの例以下のSOAP XMLの例は、この呼び出しに渡すことのできるパラメーターを表示しています。以下のSOAPの例は、この呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <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>
<function>LISTROLES</function>
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 | Roles | AdministrationRole[] | ロールの一覧です。 |
応答の例サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
language | xml |
---|
theme | Eclipse | language | xml |
---|
| <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>
<roles>
<functions>
<accessLevelCode>CRUD</accessLevelCode>
<functionCode>ACTIVITYSTREAM</functionCode>
<functionDescription>Allows users to access the activity stream.</functionDescription>
<functionName>Activity Stream</functionName>
</functions>
<functions>
<accessLevelCode>CRUD</accessLevelCode>
<functionCode>TIMELINE</functionCode>
<functionDescription>Allows users to access their timeline.</functionDescription>
<functionName>Timeline</functionName>
</functions>
<functions>
<accessLevelCode>CRUD</accessLevelCode>
<functionCode>BROADCASTSUBSCRIBE</functionCode>
<functionDescription>Allows users to subscribe to report broadcasts.</functionDescription>
<functionName>Subscribe to Broadcast</functionName>
</functions>
<functions>
<accessLevelCode>R</accessLevelCode>
<functionCode>STORYBOARD</functionCode>
<functionDescription>Allows users to view, create, edit or delete Storyboards.</functionDescription>
<functionName>Storyboard</functionName>
</functions>
<functions>
<accessLevelCode>R</accessLevelCode>
<functionCode>DASHPUBLIC</functionCode>
<functionDescription>Allows users to create and edit Public dashboards.</functionDescription>
<functionName>Public Dashboards</functionName>
</functions>
<functions>
<accessLevelCode>CRUD</accessLevelCode>
<functionCode>TASKPERSONAL</functionCode>
<functionDescription>Allow users to create and assign tasks to themselves.</functionDescription>
<functionName>Personal Tasks</functionName>
</functions>
.
.
.
<roleCode>YFADMIN</roleCode>
<roleDescription>This user has the widest range of access to the system, and as such you should have a very limited number of people assigned this role. They can do everything from create content through to managing system tasks.</roleDescription>
<roleName>System Administrator</roleName>
</roles>
<sessionId>4f86f0e30e30bf4b07dea21267de0a74</sessionId>
<statusCode>SUCCESS</statusCode>
</return>
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| 以下は、こちらの関数の基礎的なリクエストです。
Code Block |
---|
language | java |
---|
theme | Eclipse |
---|
language | java |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("LISTROLES"); |
|
完成例以下は、LISTROLES関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_listrolelistroles.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_listroles.jsp」を実行します。
Code Block |
---|
| codejava | theme | Eclipse | language | java |
---|
| <%
/* ws_listroles.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("LISTROLES");
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success.<br>Available Roles:");
AdministrationRole[] roles = rs.getRoles();
for (AdministrationRole role: roles){
out.write("<br>");
out.write("<br>Role Name: " + role.getRoleName());
out.write("<br>Role Code: " + role.getRoleCode());
out.write("<br>Role Description: " + role.getRoleDescription());
// uncomment to display all the security functions:
/*
out.write("<br>Function Name | Code | Description | TypeCode | AccessLevelCode");
for (AdministrationFunction f: role.getFunctions()){
out.write("<br>" + f.getFunctionName() + " | "
+ f.getFunctionCode() + " | "
+ f.getFunctionDescription() + " | "
+ f.getFunctionTypeCode() + " | "
+ f.getAccessLevelCode());
}
*/
}
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
}
%> |
|
Expand |
---|
|
こちらの関数は、新規ロールを作成し、ロール機能を更新します。リクエストは、ロール詳細を指定するためのAdministrationRoleオブジェクトと、ロールのためのAdministrationFunctionの配列を含まなくてはいけません。こちらの関数が、ロールの更新、または新規ロール作成に使用されるか同課に関わらず、すべてのYellowfinロールは、必須関数であるレポートアクセス(関数コード:MIREPORT)を要求することに注意してください。MIREPORTには、アクセスレベルコードとして、最低でもR(読み取り)を設定 しなくてはいけません。こちらの関数が呼び出される度に、セキュリティ関数は上書きされます。 こちらの関数は、新規ロールを作成し、ロール機能を更新します。リクエストは、ロールの詳細を指定するAdministrationRoleオブジェクトと、ロールのAdministrationFunctionの配列を含まなくてはいけません。こちらの関数を、ロールの更新、または新規ロール作成のいずれに使用するかに関わらず、すべてのYellowfinロールは、必須関数であるレポートアクセス(コード:MIREPORT)を要求することに注意してください。MIREPORTには、アクセスレベルコードとして、最低でもR(読み取り)を設定しなくてはいけません。こちらの関数が呼び出される度に、セキュリティ機能は上書きされます。
リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「SAVEROLE」に設定します。 | Role | AdministrationRole | こちらのオブジェクトは追加、または更新されるロールの詳細を含みます。詳細は、以下の表を参照してください。 |
以下は、こちらの関数のために、「AdministrationRole」オブジェクトに設定しなくてはいけない主要なパラメーターです。 | 追加、または更新されるロールの詳細を含むオブジェクトです。詳細は、以下の表を参照してください。 |
以下は、こちらの関数のAdministrationRoleオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationRole 要素 | データ型 | 説明 | RoleCode | String既存のロールの内部コードを指定します。こちらのパラメーターは、既存のロールを更新したい場合には、必ず含めなくてはいけません。こちらを指定しない場合は、既に同名のロールが存在するとしても、新規ロールとして作成されます。 | 既存のロールの内部コードを指定します。既存のロールを更新したい場合は、こちらのパラメーターを必ず含めなくてはいけません。こちらを指定しない場合は、既に同名のロールが存在していても、新規ロールとして作成されます。 | RoleName | String | 新規、または既存のロールの名前です。こちらは、既存のロールの変更時にも必須です。こちらを設定しない場合、呼び出しはロール名空白に設定します。新規、または既存のロールの名前です。こちらは、既存のロールの変更時にも必須です。こちらを設定しない場合、呼び出しはロール名を空白にします。 | RoleDescription | String | ロールの説明です。 | FunctionFunctions | AdministrationFunction | こちらのオブジェクトは、セキュリティ関数の一覧を含みます。これらは、SAVEROLE関数を呼び出す度に上書きされます。レポートアクセス関数は必須です。より詳細な情報は、以下の表を参照してください。 |
以下は、こちらのwebサービスのためにAdministrationFunctionオブジェクトに設定しなくてはいけない主要なパラメーターです。 | セキュリティ機能の一覧を含むオブジェクトです。これらは、SAVEROLE関数を呼び出す度に上書きされます。レポートアクセス関数は必須です。より詳細な情報は、以下の表を参照してください。 |
以下は、こちらのwebサービスのAdministrationFunctionオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationFunction要素 | データ型 | 説明 | FunctionCode | String | セキュリティ関数のコードを指定します。例えば、レポートアクセス関数を含める場合は、MIREPORTと設定します。セキュリティ機能のコードを指定します。例えば、レポートアクセス関数を含める場合は、MIREPORTと設定します。 | AccessLevelCode | String | 関数のアクセスレベルです。例えば、Rは読み取りを意味します。 |
以下のSOAP XMLの例は、この呼び出しに渡すことのできるパラメーターを表示しています。以下のSOAPの例は、この呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
language | 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>
<function>SAVEROLE</function>
<role>
<roleCode>REPORTWRITER</roleCode>
<roleName>Report Content Writer</roleName>
<roleDescription>This role can generate reports.</roleDescription>
<functions>
<functionCode>MIREPORT</functionCode>
<accessLevelCode>R</accessLevelCode>
</functions>
</role>
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
language | xml |
---|
| <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>
<roles>
<functions>
<accessLevelCode>R</accessLevelCode>
<functionCode>MIREPORT</functionCode>
</functions>
<roleCode>REPORTCONTENTWRITER</roleCode>
<roleDescription>This role can generate reports.</roleDescription>
<roleName>Report Content Writer</roleName>
</roles>
<sessionId>ceaa85d0ca1eb6057dc4facb0a7a5aa9</sessionId>
<statusCode>SUCCESS</statusCode>
</return>
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| 以下は、こちらの関数の基礎的なリクエストです。
Code Block |
---|
language | java |
---|
theme | Eclipse |
---|
language | java |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("SAVEROLE"); |
ロールを指定します。ロールを定義します。
Code Block |
---|
language | java |
---|
theme | Eclipse | language | java |
---|
| AdministrationRole role = new AdministrationRole(); |
既存のロールを変更する場合は、ロールコードが必須になります。
Code Block |
---|
language | java |
---|
theme | Eclipse |
---|
language | java |
---|
| AdministrationPerson[] ap = new AdministrationPerson[2]; | これらの必須パラメーターを提供することで、最初のユーザーの詳細を追加します。:UserId、FirstName、LastName、RoleCode、Password、EmailAddress
Code Block |
---|
| aprole.setRoleCode("NEWROLE"); // If you want to create a new role, comment this out. |
ロールコードを指定しない場合は、同名のロールが既に存在していても、新規ロールとして作成されます。
Tip |
---|
YellowfinデータベースのOrgRoleテーブルから、ロールコードを取得することができます。(通常これはロール名に基づき、すべて大文字のスペースなしで表現されます。) |
既存のロールを変更する場合でもロール名は必須です。ロール名を指定しない場合、呼び出しはこれを空白にします。
Code Block |
---|
| role.setRoleName("New Role");
role.setRoleDescription("testing"); |
ロールにセキュリティ機能を割り当てます。
Code Block |
---|
| role.setFunctions(f);
rsr.setRole(role); |
|
完成例以下は、SAVEROLE関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_saverole.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_saverole.jsp」を実行します。
Code Block |
---|
| Code Block |
---|
| <% ap[0].setPassword("test");
/* ws_saverole.jsp */
ap[0].setEmailAddress("user1@yellowfin.com.au");AdministrationPersonオブジェクトのその他のパラメーターの設定はオプションです。 同様に、他のユーザーの詳細を提供します。 Code Block |
---|
| | ap[1] = new AdministrationPerson();
ap[1].setUserId("user2@yellowfin.com.au");
ap[1].setFirstName("user2");
ap[1].setLastName("Lastname2");
ap[1].setRoleCode("YFREPORTCONSUMER");
ap[1]%>
<%@ 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
ap[1].setEmailAddress("user2@yellowfin.com.au");これを、必要なユーザー分繰り返します。 リクエストに「ap」オブジェクトを渡します。
Code Block |
---|
| rsr.setPeople(ap); | リクエストを構成したら、呼び出しを実行します。
Code Block |
---|
| AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理サービスを初期化します。実行方法の詳細は、こちらを参照してください。 - 返される応答には、StatusCodeパラメーターが含まれます。詳細については、上記の応答パラメーターの表を参照してください。
完成例以下は、ADDUSERS関数の完成例です。今回の例では、デフォルト組織に、user1@yellowfin.com.auとuser2@yellowfin.com.auという2つの新規ユーザーを追加します。 こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_addusers.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_addusers.jsp」を実行します。
<%
/* ws_addusers.jsp the account above
rsr.setOrgId(1);
rsr.setFunction("SAVEROLE");
//define a role:
AdministrationRole role = new AdministrationRole();
role.setRoleCode("NEWROLE");
role.setRoleName("New Role");
role.setRoleDescription("testing");
AdministrationFunction[] f = new AdministrationFunction[2];
f[0] = new AdministrationFunction();
f[0].setFunctionCode("MIREPORT"); // mandatory
f[0].setAccessLevelCode("R");
f[1] = new AdministrationFunction();
f[1].setFunctionCode("ACTIVITYSTREAM"); */ %> <%@ 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
f[1].setAccessLevelCode("CRUD");
//Feed the security functions to the role:
role.setFunctions(f);
rsr.setRole(role);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
}
%> // change to the password of the above account
rsr.setOrgId(1);
rsr.setFunction("ADDUSERS");
AdministrationPerson[] ap = new AdministrationPerson[2];
ap[0] = new AdministrationPerson();
ap[0].setUserId("user1@yellowfin.com.au"); |
|
Expand |
---|
|
こちらの関数は、指定したユーザーロールを削除します。AdministrationRoleオブジェクトのロールコードを提供することで、対象のロールを識別することができます。
リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「DELETEROLE」に設定します。 | Role | AdministrationRole | 削除するロールの詳細を含むオブジェクトです。以下の表を参照してください。 |
以下は、AdministrationRoleオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationRole 要素 | データ型 | 説明 | RoleCode | String | 削除する既存のロールの内部コードを指定します。 |
以下のSOAPの例は、この呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <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>
ap[0].setFirstName("user1");
ap[0].setLastName("Lastname1");
ap[0].setRoleCode("YFREPORTCONSUMER"); <password>test</password>
ap[0].setPassword("test"); <orgId>1</orgId>
<function>DELETEROLE</function>
<role>
ap[0].setEmailAddress("user1@yellowfin.com.au"); ap[1] = new AdministrationPerson(); ap[1].setUserId("user2@yellowfin.com.au"); <roleCode>REPORTWRITER</roleCode>
ap[1].setFirstName("user2");
ap[1].setLastName("Lastname2");
ap[1].setRoleCode("YFREPORTCONSUMER"); </role> ap[1].setPassword("test");
ap[1].setEmailAddress("user2@yellowfin.com.au");</arg0>
rsr.setPeople(ap);
</web:remoteAdministrationCall>
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if
("SUCCESS".equals(rs.getStatusCode() ) ) {
out.write("Success");
} else {
out.write("Failure");
out.write("Code: " + rs.getErrorCode() );
}
%> |
|
Expand |
---|
title | ADDUSERSIGNOREDUPLICATES |
---|
|
こちらの関数は、重複を追加することなく、一度に複数のユーザーを作成します。ADDUSERS関数と同様に機能しますが、作成しようとしているユーザーのログインIDや電子メールアドレスが既に使用されていたり、パスワードが提供されない場合は、「例外なし」エラーが発生し、ユーザーは作成されません。応答には、追加されなかったユーザーとともに、AdministrationPersonオブジェクトが含まれます。 リクエストパラメーター以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「ADDUSERSIGNREDUPLICATES」に設定します。 | Person | AdministrationPerson[] | 一度に追加され、重複を検証されるユーザーの詳細を含むオブジェクト配列です。以下の表を参照してください。 | OrgRef | String | クライアント組織内部参照IDです(こちらの設定はオプションです)。こちらは、参照されるクライアント組織に新規ユーザーを作成します。こちらを設定しない場合、新規ユーザーはデフォルト(プライマリー)組織内に作成されます。 |
以下は、新規ユーザーを作成するために、「AdministrationPerson」オブジェクトに設定しなくてはいけない必須のパラメーターです。 AdministrationPerson 要素 | データ型 | 説明 | UserId | String | 新規ユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 | Password | String | 新規ユーザーのパスワードです。こちらは、Yellowfinのパスワードポリシーに準拠する必要があります。 | FirstName | String | 新規ユーザーの名です。 | LastName | String | 新規ユーザーの姓です。 | RoleCode | String | 新規ユーザーのロールを設定します。例:YFREPORTCONSUMER 注意:リポジトリデータベースから、Yellowfinのロールコードの一覧を取得することができます。例:SQLクエリーを使用する場合:SELECT * FROM OrgRole | EmailAddress | String | 新規ユーザーの電子メールアドレスです。 |
応答パラメーター返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 | People | AdministrationPerson[] | アカウントが作成されなかったユーザーです。 |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| こちらは、Yellowfinの新規ユーザーを作成する基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
Code Block |
---|
| | AdministrationServiceRequest rsr = new AdministrationServiceRequest();
</soapenv:Body>
</soapenv:Envelope>
応答要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <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>
<roles>
<roleCode>REPORTWRITER</roleCode>
</roles>
<sessionId>6c494a263bb684c1082317d0e1d695eb</sessionId>
<statusCode>SUCCESS</statusCode>
</return>
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| 同様に、他のユーザーの詳細を提供します。 Code Block |
---|
| ap[1] = new AdministrationPerson(); ap[1].setUserId("user2@yellowfin.com.au"); ap[1].setFirstName("user2"); ap[1].setLastName("Lastname2"); ap[1].setRoleCode("YFREPORTCONSUMER"); // or
ap[1].setPassword("test");
ap[1].setEmailAddress("user2@yellowfin.com.au"); |
これを、必要なユーザー分繰り返します。
- リクエストに「ap」オブジェクトを渡します。
Code Block |
---|
| rsr.setPeople(apretrieved from the Yellowfin database table OrgRole.
rsr.setRole(role); |
- 返される応答には、StatusCodeとPeopleパラメーターが含まれます。詳細については、上記の応答パラメーターの表を参照してください。
- 追加されなかったユーザーを取得するには、こちらのコマンドを使用します。code
Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
themeEclipselanguage
|
完成例 | java |
AdministrationPerson[] failed_users = rs.getPeople(); |
Expand |
---|
title | DELUSER / DELETEUSER |
---|
|
こちらの関数は、指定されたユーザーをYellowfinから削除します。注意:クライアント組織からユーザーを削除するには、「REMOVEUSERACCESS」の呼び出しを実行します。 リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「DELETEUSER」、または「DELUSER」に設定します。 | Person | AdministrationPerson[] | 削除されるユーザーアカウントの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | クライアント組織内部参照IDです(こちらの設定はオプションです)。指定したクライアント組織にユーザーをログインさせます。こちらを設定しない場合、ユーザーはログイン先を指定するために、クライアント組織選択ページへ移動します。 |
以下は、「AdministrationPerson」オブジェクトに設定しなくてはいけないパラメーターです。 AdministrationPerson 要素 | データ型 | 説明 | UserId | String | 削除するユーザーのユーザーIDです。こちらのユーザーは、既にYellowfinインスタンス内に存在していなくてはいけません。 これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 |
リクエストの例以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
|
|
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
<soapenv:Header/>
<soapenv:Body>
以下は、DELETEROLE関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_deleterole.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、ロールコード値を調整します。
インターネットブラウザから、「http://<host>:<port>/ws_deleterole.jsp」を実行します。
<web:remoteAdministrationCall>
<arg0>
<loginId>admin@yellowfin.com.au</loginId> */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ |
<password>test</password>
<orgId>1</orgId>
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); |
<function>DELETEUSER<
function> adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au"); |
<person> // provide your Yellowfin webservices admin account
|
<userId>binish.sheikh@yellowfin.com.au</userId>
</person> // change to the password |
</arg0>of the above account above
|
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope>
応答要素
返される応答には、これらのパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
応答の例
サービスは、今回のSOAPの例に基づき、以下の応答を返します。
Code Block |
---|
|
<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>cc8c2b81d06485fdd20fe4cd24f5f70c</sessionId>
<statusCode>SUCCESS</statusCode>rsr.setOrgId(1);
rsr.setFunction("DELETEROLE");
AdministrationRole role = new AdministrationRole();
role.setRoleCode("NEWROLE");
rsr.setRole(role);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
}
%> |
ユーザーグループ関数
ユーザーグループに関連するwebサービスは、以下のように定義されます。
Expand |
---|
|
LISTGROUPS関数は、Yellowfin内の利用可能なすべてのグループを返します。応答には、利用可能なグループを示すAdministrationGroupオブジェクトの配列が含まれます。指定したクライアントに所属するグループの一覧を取得する場合は、呼び出し内でクライアント組織参照IDを渡します。
リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「LISTGROUPS」に設定します。 | OrgRef | String | 指定したクライアントに所属するグループの一覧を取得する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト組織のグループが返されます。 |
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <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>
</return><loginId>admin@yellowfin.com.au</loginId>
</ns2:remoteAdministrationCallResponse> <<password>test</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| Code Block |
---|
| こちらは、この呼び出しの基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
Code Block |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("DELETEUSER"); |
関数は、削除するユーザーの指定に使用するAdministrationPersonオブジェクトを要求するので、ID(例:電子メールアドレスや、その他タイプのIDなど、ログインID方法に応じたID)を提供します。 Code Block |
---|
| | AdministrationPerson ap = new AdministrationPerson();
ap.setUserId("test@yellowfin.com.au"); password>
<orgId>1</orgId>
<function>LISTGROUPS</function> // test@yellowfin.com.au should be an existing Yellowfin user. rsr.setPerson(ap);リクエストの構成が完了したら、呼び出しを実行します。 Code Block |
---|
| AdministrationServiceResponse rs
= adminService.remoteAdministrationCall(rsr);管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。 応答には、StatusCodeパラメーターが含まれます。より詳細な情報は、上記の応答パラメーターの表を参照してください。
完成例以下は、DELETEUSER関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_deleteuser.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_deleteuser.jsp」を実行します。
<% </arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 | Groups | AdministrationGroup[] | グループの一覧です。 |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:remoteAdministrationCallResponse /*xmlns:ns2="http://webservices.web.mi.hof.com/">
<return>
ws_deleteuser.jsp <errorCode>0</errorCode>
*/ %><groups>
<%@ 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);<groupDescription>This group contains all users with the Admin role.</groupDescription>
<groupId>11950<//groupId>
adjust host and port number AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService(); AdministrationServiceRequest<groupMembers>
rsr = new AdministrationServiceRequest(); rsr.setLoginId("admin@yellowfin.com.au"); <internalId>5<//internalId>
provide your Yellowfin web services admin account rsr.setPassword("test"); <loginId>admin@yellowfin.com.au</loginId>
<//groupMembers>
change to the password of the above account rsr.setOrgId(1); rsr.setFunction("DELETEUSER"); <groupMembers>
AdministrationPerson ap = new AdministrationPerson(); ap.setUserId("test@yellowfin.com.au"); rsr.setPerson(ap); AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); <internalId>13000</internalId>
if ("SUCCESS".equals(rs.getStatusCode() ) ) { out.write("Success"); } else { out.write("Failure");<loginId>binish.sheikh@yellowfin.com.au</loginId>
out.write(" Code: " + rs.getErrorCode() );
}
%> |
|
ユーザー情報の取得と検証
ユーザー作成後は、Webサービスの呼び出しを使用してユーザーの詳細を取得することができます。「AdministrationPerson」オブジェクトのUser IDフィールドは、ユーザーを識別するために使用されます。結果として、投入された「AdministrationPerson」オブジェクトが返されます。セキュリティ上の理由からパスワードは返されず、「NULL」に
なります。ユーザー情報は、こちらの項目内のアプリケーションに照らし合わせて検証することもできます。
Expand |
---|
|
こちらの関数は、既存のYellowfinユーザーの詳細を取得します。これは、AdministrationPersonオブジェクトを、ユーザーの識別に使用できるパラメーターとして受け付けます。応答には、ユーザー詳細のすべてが含まれたAdministrationPersonオブジェクトが含まれます。 リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「GETUSER」に設定します。 | Person | AdministrationPerson | 情報が取得されるユーザーの詳細を含むオブジェクトです。注意:以下の表を参照してください。 | OrgRef | String | クライアント組織内部参照IDです(こちらの設定はオプションです)。指定したクライアント組織にユーザーをログインさせます。こちらを設定しない場合、ユーザーはログイン先を指定するために、クライアント組織選択ページへ移動します。 |
以下は、こちらの関数のために「AdministrationPerson」オブジェクトに設定しなくてはいけない主要なパラメーターです。 AdministrationPerson要素 | データ型 | 説明 | UserId | String | 情報が取得されるユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 |
リクエストの例以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
<soapenv:Header/>
<soapenv:Body> </groupMembers>
<groupName>Administrators</groupName>
<web:remoteAdministrationCall> </groups>
<arg0> <messages>Successfully Authenticated <loginId>admin@yellowfinUser: admin@yellowfin.com.au</loginId>messages>
<password>test</password><messages>Web Service <orgId>1</orgId>Request Complete</messages>
<function>GETUSER<<sessionId>79d937ead121745d93289f287d55b0ac</function>sessionId>
<person>
<userId>admin@yellowfin.com.au</userId>
<statusCode>SUCCESS</statusCode>
</person>return>
</arg0>
</web:remoteAdministrationCall></ns2:remoteAdministrationCallResponse>
</soapenvS:Body>
</soapenvS:Envelope> |
手順応答の要素Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。返される応答には、これらのパラメーターが含まれます。 応答要素データ型説明StatusCodeStringWebサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。SUCCESS 応答の例サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
<return>
| FAILURE |
Person | AdministrationPerson | ユーザー詳細を含むオブジェクトです。 |
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("LISTGROUPS"); |
指定したクライアントのグループ一覧を取得する場合は、クライアント組織IDを含めます。(こちらを指定しない場合は、デフォルト(プライマリー)組織のグループが表示されます。)
Code Block |
---|
| rsr.setOrgRef("org1"); |
リクエストの構成が完了したら、呼び出しを実行します。
Code Block |
---|
| AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
応答には、これらのパラメーターが含まれます。
応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 | Groups | AdministrationGroup[] | グループの一覧です。 |
- AdministrationGroup.getGroupMembers()を使用することで、各グループのメンバーを取得することができます。これは、AdministrationGroupMemberの配列を取得します。グループにメンバーとしてのユーザーロールが含まれる場合、これは取得されません。getGroupMembers()を介して、ユーザーアカウントのみが取得されます。
|
完成例
以下は、LISTGROUPS関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_listgroups.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザーの詳細を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_listgroups.jsp」を実行します。
Code Block |
---|
|
<% <errorCode>0</errorCode>
/* <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>ws_listgroups.jsp <messages>Getting user information...<*/messages>
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ <messages>Getting user information...</messages>
<messages>Web Service Request Complete</messages>
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 <person>host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
<emailAddress>admin@yellowfinrsr.setLoginId("admin@yellowfin.com.au</emailAddress>au"); // provide your Yellowfin web services <firstName>System</firstName>admin account
rsr.setPassword("test"); <initial/> <ipId>5<//ipId> change to the password of the above account
rsr.setOrgId(1);
rsr.setFunction("LISTGROUPS");
<languageCode>EN</languageCode>//rsr.setOrgRef("org1"); <lastName>Administrator</lastName> // provide org reference if required. Default <roleCode>YFADMIN</roleCode>org groups will be retrieved otherwise
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
<salutationCode/>
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success.<br>Available Groups:");
AdministrationGroup[] groups <status>ACTIVE</status>
= rs.getGroups();
for (AdministrationGroup group: groups){
<timeZoneCode>AUSTRALIA/SYDNEY</timeZoneCode> out.write("<br>");
out.write("<br>Group Name: " + <userId>admin@yellowfin.com.au</userId>group.getGroupName());
out.write("<br>Group Id: " </person>+ group.getGroupId());
out.write("<br>Group Description: " + group.getGroupDescription());
<sessionId>70dc3c7158a340e19b590f0ed6ea6a8b</sessionId> out.write("<br>Group Status: " + group.getGroupStatus());
<statusCode>SUCCESS</statusCode> out.write("<br>Group Internal Reference: " + </return>group.getGroupInternalReference());
</ns2:remoteAdministrationCallResponse>// uncomment to display the members:
</S:Body>
</S:Envelope> |
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
Expand |
---|
|
Code Block |
---|
|
こちらは、この呼び出しの基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
Code Block |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("GETUSER"); |
AdministrationPersonオブジェクトを介して、ユーザーIDを提供します。 Code Block |
---|
| AdministrationPerson ap = new AdministrationPerson();
ap.setUserId("john.smith@yellowfin.com.au");
rsr.setPerson(ap); |
リクエストの構成が完了したら、呼び出しを実行します。 Code Block |
---|
| AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
- 応答には、StatusCodeとPersonパラメーターが含まれます。より詳細な情報は、応答パラメーターの表を参照してください。
取得したユーザーの詳細を表示するには、以下の例を使用します。
Code Block |
---|
|
|
if ("SUCCESS".equals(rs.getStatusCode()) ) {
ap = rs.getPerson();
out.write("UserId:" + ap.getUserId() + "<br>");
out.write("Password:" + ap.getPassword() + "<br>");
out.write("FirstName:" + ap.getFirstName() + "<br>");
out.write("LastName:" + ap.getLastName() + "<br>");
out.write("Initial:" + ap.getInitial() + "<br>");*
out.write("<br>Members:<br>Login Id | Internal Id ");
for (AdministrationGroupMember member: group.getGroupMembers()){
out.write("<br>" + member.getLoginId() + " | " + member.getInternalId() );
}
*/
}
} else {
out.write("
SalutationCode:" + ap.getSalutationCode() + "<br>"Failure");
out.write("
RoleCode:" + ap.getRoleCode() + "<br>");
out.write("EmailAddress:" + ap.getEmailAddress() + "<br>");
out.write("LanguageCode:" + ap.getLanguageCode() + "<br>");
out.write("IpId:" + ap.getIpId() + "<br>");
out.write("TimeZoneCode:" + ap.getTimeZoneCode() + "<br>");
out.write("Status:" + ap.getStatus() + "<br>");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
}
完成例
以下は、GETUSER関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_getuser.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_getuser.jsp」を実行します。
<% Code: " + rs.getErrorCode());
}
%> |
Expand |
---|
|
指定したユーザーグループを、そのメンバーとともに取得する場合は、こちらの関数を使用します。リクエストには、必ずグループ名を提供しなくてはいけません。
リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「GETGROUP」に設定します。 | Group | AdministrationGroup | 取得するユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | 指定したクライアント組織に所属するグループを検索する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト組織のグループが検索されます。 |
以下は、こちらの関数のAdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。 AdministrationGroup要素 | データ型 | 説明 | GroupName | String | その詳細とメンバー一覧を取得するユーザーグループの名前を指定します。 |
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <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>
ws_getuser.jsp<function>GETGROUP</function>
<group>
*/ %> <%@ 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); <groupName>Administrators</groupName>
</group> // adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService(); AdministrationServiceRequest rsr = new AdministrationServiceRequest(); </arg0>
rsr.setLoginId("admin@yellowfin.com.au"); </web:remoteAdministrationCall>
// provide your Yellowfin web services admin account
rsr.setPassword("test"); </soapenv:Body>
</soapenv:Envelope> |
応答の要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 | Group | AdministrationGroup[] | メンバーの一覧を含むグループの詳細です。 |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <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>
// change to the<group>
password of the above account rsr.setOrgId(1); rsr.setFunction("GETUSER"); AdministrationPerson ap = new AdministrationPerson();
ap.setUserId("john.smith@yellowfin.com.au");
rsr.setPerson(ap);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) { <groupDescription>This group contains all users with the Admin role.</groupDescription>
ap = rs.getPerson(); <groupId>11950</groupId>
out.write("User Id:" + ap.getUserId() + "<br>"); out.write("Password:" + ap.getPassword() + "<br>");<groupMembers>
out.write("First Name:" + ap.getFirstName() + "<br>"); out.write("Last Name:" + ap.getLastName() + "<br>"); <internalId>5</internalId>
out.write("Initial:" + ap.getInitial() + "<br>"); out.write("Salutation Code:" + ap.getSalutationCode() + "<br>");<loginId>admin@yellowfin.com.au</loginId>
out.write("Role Code:" + ap.getRoleCode() + "<br>"); out.write("Email Address:" + ap.getEmailAddress() + "<br>");</groupMembers>
out.write("Language Code:" + ap.getLanguageCode() + "<br>");<groupMembers>
out.write("IpId:" + ap.getIpId() + "<br>"); out.write("Time Zone Code:" + ap.getTimeZoneCode() + "<br>"); <internalId>13000</internalId>
out.write("Status:" + ap.getStatus() + "<br>"); } else { out.write("Failure");<loginId>binish.sheikh@yellowfin.com.au</loginId>
out.write(" Code: " + rs.getErrorCode() ); } %> |
|
Expand |
---|
|
こちらの関数は、指定されたクライアント組織内の、すべてのユーザーの詳細を取得します。情報は、AdministrationPersonオブジェクトの配列で取得されます。クライアント組織を指定しない場合は、すべてのユーザーが取得されます。取得するユーザーの検索基準を指定するために、「setParameters()」メソッドを使用することができます。セキュリティ上の理由からパスワードは返されず、「NULL」に なります。 リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「GETUSER」に設定します。 | OrgRef | String | クライアント組織内部参照IDです(こちらの設定はオプションです)。こちらを設定しない場合は、すべてのクライアント組織が検索されます。 |
リクエストの例以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
<soapenv:Header/>
<soapenv:Body>
<web:remoteAdministrationCall> </groupMembers>
<groupName>Administrators</groupName>
<groupStatus>OPEN</groupStatus>
</group>
<arg0> <messages>Successfully Authenticated User: <loginId>admin@yellowfinadmin@yellowfin.com.au</loginId>messages>
<messages>Web Service Request <password>test<Complete</password>messages>
<orgId>1<<sessionId>54c5cf263f323b439c5834d1f6d8b645</orgId>sessionId>
<function>GETALLUSERS<<statusCode>SUCCESS</function>statusCode>
</arg0>return>
</webns2:remoteAdministrationCall>remoteAdministrationCallResponse>
</soapenvS:Body>
</soapenvS:Envelope> |
手順応答の要素Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。返される応答には、これらのパラメーターが含まれます。 応答要素データ型説明StatusCode 応答の例サービスは、今回のSOAPの例に基づき、以下の応答を返します。 | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。 |
People | AdministrationPerson | ユーザー詳細を含むオブジェクトの配列です。 |
<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>
|
language | xml |
---|
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("GETGROUP"); |
指定したクライアント組織のグループ一覧を取得する場合は、クライアント組織IDを含めます。(こちらを指定しない場合は、デフォルト(プライマリー)組織のグループが表示されます)
Code Block |
---|
| rsr.setOrgRef("org1"); |
メンバーを取得するためにユーザーグループの名前を提供します。
Code Block |
---|
| AdministrationGroup group = new AdministrationGroup();
group.setGroupName("Administrators");
rsr.setGroup(group); |
リクエストの構成が完了したら、呼び出しを実行します。
Code Block |
---|
| AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
応答には、これらのパラメーターが含まれます。
応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 | Group | AdministrationGroup[] | メンバー含むグループです。 |
メンバーを取得するためには、以下を使用します。
Code Block |
---|
| AdministrationGroupMember[] members = rs.getGroup().getGroupMembers(); |
Tip |
---|
YellowfinアカウントのIpIdを取得するために、AdministrationGroupMember.getInternalId()を使用することができます。これを、GETUSERBYIPの呼び出しに渡すことで、ユーザーのAdministrationPersonオブジェクトを取得します。 |
|
完成例
以下は、GETGROUP関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_getgroup.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、グループ名を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_getgroup.jsp」を実行します。
Code Block |
---|
|
<% <messages>Web Service Request
Complete</messages>* <people> ws_getgroup.jsp <firstName>System</firstName> */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.hof.util.*, java.util.*, java.text.*" %>
<ipId>5</ipId><%@ page import="com.hof.web.form.*" %>
<%@ page import="com.hof.mi.web.service.*" %>
<%
AdministrationServiceService s_adm = new AdministrationServiceServiceLocator("localhost",8080, "/services/AdministrationService", false); <lastName>Administrator</lastName> // adjust host and port number
AdministrationServiceSoapBindingStub adminService = <userId>admin@yellowfin.com.au</userId>
(AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au"); </people> // provide your Yellowfin web services admin <sessionId>2c32528279baa26b730f9e3c8787880d</sessionId>
account
rsr.setPassword("test"); <statusCode>SUCCESS</statusCode> </return> </ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
Expand |
---|
|
Code Block |
---|
|
こちらは、すべてのユーザーを取得するリクエストの例であり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
Code Block |
---|
|
|
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");// change to the password of the account above
rsr.setOrgId(1);
rsr.setFunction("
GETALLUSERSGETGROUP");
クライアント組織を指定しない場合は、すべてのクライアント組織が検索されます。
Code Block |
---|
|
//rsr.setOrgRef("org1");
検索基準:GETALLUSERS関数は、2つの文字列の配列を受け付けます。最初の配列(searchingCriteria[0])は、「%John%」のような条件を使用して、Yellowfinデータベースユーザーの名、姓、電子メールの@よりも左側、または右側と比較されます。次の配列(seachingCriteria[1])は、Yellowfinデータベースユーザーの電子メール右側(ドメイン)と比較されます。
Code Block |
---|
|
String[] searchingCriteria = new String[] {"John","yellowfin.com.au"};
rsr.setParameters(searchingCriteria); |
リクエストの構成が完了したら、呼び出しを実行します。
Code Block |
---|
|
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
- 応答には、StatusCodeとPeopleパラメーターが含まれます。より詳細な情報は、上記の応答パラメーターの表を参照してください。
完成例
以下は、GETALLUSERS関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_getallusers.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_getallusers.jsp」を実行します。
<% /*/ provide org reference ID if required. Default org will be searched otherwise
ws_getallusers.jsp
AdministrationGroup group = new AdministrationGroup();
group.setGroupName("Administrators");
rsr.setGroup(group);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
*/
%>
if ("SUCCESS".equals(rs.getStatusCode()) ) {
<%@ 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 out.write("Success.<br>");
group = rs.getGroup();
out.write("<br>");
out.write("<br>Group Name: " + group.getGroupName());
out.write("<br>Group Id: " // adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("GETALLUSERS");
rsr.setOrgRef("org1");
String[] searchingCriteria = new String[] {"John","yellowfin.com.au"};
rsr.setParameters(searchingCriteria);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success. " + rs.getPeople().length + " people found.");
} + group.getGroupId());
out.write("<br>Group Description: " + group.getGroupDescription());
out.write("<br>Group Status: " + group.getGroupStatus());
out.write("<br>Group Internal Reference: " + group.getGroupInternalReference());
// display the members:
out.write("<br>Members:<br>Login Id | Internal Id ");
for (AdministrationGroupMember member: group.getGroupMembers()){
out.write("<br>" + member.getLoginId() + " | " + member.getInternalId() );
}
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode() );
}
%> |
Expand |
---|
| こちらの関数は、IPを使用して、ユーザーの詳細を取得します。関数は、IPID(Yellowfinリポジトリデータベース内で、これはPersonテーブルのIpIdフィールドになります)を提供することで、ユーザー指定に使用するためのAdministrationPersonオブジェクトを、パラメーターとして受け付けます。応答には、すべてのユーザー詳細を含むAdministrationPersonオブジェクトが含まれます。
|
こちらの関数は、指定したクライアント組織(参照IDが提供される場合)、またはデフォルト(プライマリー)組織のいずれかに新規ユーザーグループを作成します。新規グループの詳細は、AdministrationGroupオブジェクトを使用して渡されます。新規グループにメンバーを追加する場合は、AdministrationGroupMemberを介して、グループメンバーの詳細を提供します。(追加するメンバーは、既存のYellowfinユーザーでなくてはいけません)
リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「GETUSERBYIPCREATEGROUP」に設定します。 | Person | AdministrationPerson | 情報が取得されるユーザーの詳細を含むオブジェクトです。注意:以下の表を参照してください。 |
以下は、こちらの関数のために「AdministrationPerson」オブジェクトに設定しなくてはいけない主要なパラメーターです。 AdministrationPerson要素 | データ型 | 説明 | IpId | Integer| | 情報が取得されるユーザーのIP IDです。 |
リクエストの例 | Group | AdministrationGroup | 追加するユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | 指定したクライアント組織に新規グループを追加する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト組織にグループが作成されます。 |
以下は、こちらの関数のAdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationGroup要素 | データ型 | 説明 | GroupName | String | 新規グループの名前です。 | GroupMembers | AdministrationGroupMember | グループメンバーの詳細を提供するために使用されるオブジェクトです。以下の表を参照してください。 |
以下は、こちらの関数のAdministrationGroupMemberオブジェクトに設定しなくてはいけない主要なパラメーターです。 AdministrationGroupMember要素 | データ型 | 説明 | LoginId | String | 既存のYellowfinユーザーのユーザーIDです。グループに追加するために必要です。 |
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
language | 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>
<function>GETUSERBYIP<<function>CREATEGROUP</function>
<person><group>
<ipId>5</ipId><groupName>Supervisors</groupName>
<groupMembers>
</person> </arg0> </web:remoteAdministrationCall><loginId>admin@yellowfin.com.au</loginId>
</soapenv:Body>
</soapenv:Envelope> |
応答の要素返される応答には、これらののパラメーターが含まれます。 <loginId>binish.sheikh@yellowfin.com.au</loginId>
</groupMembers>
</group>
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答の要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 Person |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 AdministrationPersonユーザー詳細を含むオブジェクトです。 応答の例サービスは、今回のSOAPの例に基づき、以下の応答を返します。 xml | theme | Eclipse |
---|
language | xml |
---|
| <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>Getting<messages>Web Service user information...<Request Complete</messages>
<messages>Getting<sessionId>b1f1b17d503e1e11c05b72e674bc80ec</sessionId>
user information...</messages> <statusCode>SUCCESS</statusCode>
<messages>Web Service Request Complete</messages> </return>
</ns2:remoteAdministrationCallResponse>
<person> </S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| 以下は、こちらの関数の基礎的なリクエストです。
Code Block |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
|
<emailAddress>admin@yellowfin.com.au</emailAddress>
<firstName>System</firstName>
<initial/>
<ipId>5</ipId>
rsr.setFunction("CREATEGROUP"); |
指定したクライアントに新規グループを追加する場合は、クライアント組織IDを含めます。(こちらを指定しない場合は、デフォルト(プライマリー)組織にグループが作成されます。)
Code Block |
---|
| rsr.setOrgRef("org1"); |
新規グループのパラメーターを設定します。
Code Block |
---|
| AdministrationGroup group = new AdministrationGroup();
group.setGroupName("Test Group"); |
グループにメンバーを含めます。例:
Code Block |
---|
| AdministrationGroupMember[] member = new AdministrationGroupMember[2];
member[0] = new AdministrationGroupMember();
member[0].setLoginId("admin@yellowfin.com.au");
member[1] = new AdministrationGroupMember();
member[1].setLoginId("john.smith@yellowfin.com.au");
group.setGroupMembers(member);
rsr.setGroup(group); |
リクエストの構成が完了したら、呼び出しを実行します。
Code Block |
---|
| AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
応答には、これらのパラメーターが含まれます。
応答要素 | データ型 | 説明 | StatusCode | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。 |
|
完成例以下は、CREATEGROUP関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_creategroup.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、グループメンバー、グループ名の詳細を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_creategroup.jsp」を実行します。
Code Block |
---|
| <%
<languageCode>EN</languageCode>* ws_creategroup.jsp <lastName>Administrator</lastName> <roleCode>YFADMIN<*/roleCode>
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.hof.util.*, java.util.*, java.text.*" %>
<%@ <salutationCode/>
<status>ACTIVE</status>
<timeZoneCode>AUSTRALIA/SYDNEY</timeZoneCode>
<userId>admin@yellowfin.com.au</userId>
</person>
<sessionId>81e76f1222d0dd12d9871efc7cbf0811</sessionId>page import="com.hof.web.form.*" %>
<%@ page import="com.hof.mi.web.service.*" %>
<%
AdministrationServiceService s_adm = new AdministrationServiceServiceLocator("localhost",8080, "/services/AdministrationService", false);
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("CREATEGROUP");
//Specify client org (if omitted, the group will be created in the default (primary) org):
rsr.setOrgRef("org1");
//Set parameters of the new group:
AdministrationGroup group = new AdministrationGroup();
group.setGroupName("Test Group"); <statusCode>SUCCESS</statusCode> // mandatory. Other </return>parameters are optional.
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| Code Block |
---|
| こちらは、この呼び出しの基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
Code Block |
---|
| | AdministrationServiceRequest rsr//Add members:
AdministrationGroupMember[] member = new AdministrationGroupMember[2];
member[0] = new AdministrationServiceRequestAdministrationGroupMember();
rsrmember[0].setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test
member[1] = new AdministrationGroupMember();
member[1].setLoginId("john.smith@yellowfin.com.au");
rsrgroup. setOrgIdsetGroupMembers( 1member);
rsr. setFunctionsetGroup( "GETUSERBYIP");IpIdを提供し、詳細を取得するユーザーを識別するために、AdministrationPersonオブジェクトを使用します。 Code Block |
---|
| AdministrationPerson ap = new AdministrationPerson(group);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
ap.setIpId(5); if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success");
} else {
out.write("Failure");
//IpId of the admin@yellowfin.com.au account
rsr.setPerson(ap);リクエストの構成が完了したら、呼び出しを実行します。 Code Block |
---|
| AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。 - 応答には、StatusCodeとPersonパラメーターが含まれます。より詳細な情報は、上記の応答パラメーターの表を参照してください。
この呼び出しの結果を表示するには、以下の例を使用します。
Code Block |
---|
| if ("SUCCESS".equals(rs.getStatusCode()) ) {
ap = rs.getPerson();
out.write("UserId: " + ap.getUserId() + "<br>");
out.write("Password: " + ap.getPassword() + "<br>");
out.write("FirstName: " + ap.getFirstName() + "<br>");
out.write("LastName: " + ap.getLastName() + "<br>");
out.write("Initial: " + ap.getInitial() + "<br>");
out.write("SalutationCode: " + ap.getSalutationCode() + "<br>");
out.write("RoleCode: " + ap.getRoleCode() + "<br>");
out.write("EmailAddress: " + ap.getEmailAddress() + "<br>");
out.write("LanguageCode: " + ap.getLanguageCode() + "<br>");
out.write("IpId: " + ap.getIpId() + "<br>");
out.write("TimeZoneCode: " + ap.getTimeZoneCode() + "<br>");
out.write("Status: " + ap.getStatus() + "<br>");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
} |
完成例以下は、GETUSERBYIP関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_getuserbyip.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_getuserbyip.jsp」を実行します。
<% out.write(" Code: " + rs.getErrorCode() );
}
%> |
|
Expand |
---|
|
こちらの関数は、グループのメンバーを更新するために使用します。このリクエストともにメンバーの一覧が提供される場合、既存のメンバー一覧は上書きされます。そのため、サービスは既存のメンバーをすべて削除し、新しいメンバーを追加します。メンバー一覧が提供されない場合は、グループ内の既存のユーザーすべてが削除されます。
リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「MODIFYGROUP」に設定します。 | Group | AdministrationGroup | 変更するユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | 指定したクライアント組織に所属するグループを検索する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト(プライマリー)組織内のグループが検索されます。 |
以下は、こちらの関数のAdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationGroup要素 | データ型 | 説明 | GroupName | String | グループの名前です。 | GroupMembers | AdministrationGroupMember | グループメンバーの詳細を提供するために使用されるオブジェクトです。以下の表を参照してください。 |
以下は、こちらの関数のAdministrationGroupMemberオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationGroupMember要素 | データ型 | 説明 | LoginId | String | 既存のYellowfinユーザーのユーザーIDです。グループに追加するために必要です。 |
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <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>
<function>MODIFYGROUP</function>
<group>
<groupName>Supervisors</groupName>
<groupMembers>
<loginId>admin@yellowfin.com.au</loginId>
/* </groupMembers>
ws_getuserbyip.jsp </group> */ %> <%@ 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);</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答の要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
// adjust<return>
host and port number AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService(); <errorCode>0</errorCode>
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId(" <messages>Successfully Authenticated User: admin@yellowfin.com.au");au</messages>
<messages>Web Service Request Complete<//messages>
provide your Yellowfin web services admin account rsr.setPassword("test"); <sessionId>6589bf668504fd3468e0b43844550a22</sessionId>
<statusCode>SUCCESS</statusCode>
<//return>
change to the password of the above account
rsr.setOrgId(1);
rsr.setFunction("GETUSERBYIP");
AdministrationPerson ap </ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| 以下は、こちらの関数の基礎的なリクエストです。
Code Block |
---|
| AdministrationServiceRequest rsr = new |
AdministrationPersonAdministrationServiceRequest();
|
apsetIpId(5setLoginId("admin@yellowfin.com.au");
rsr. |
setPersonapAdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsrif SUCCESS".equals(rs.getStatusCode()) ) {
ap = rs.getPerson();
out.write("User Id: " + ap.getUserId() + "<br>");
out.write("Password: " + ap.getPassword() + "<br> outwrite("First Name: " + ap.getFirstName() + "<br>");
|
完成例以下は、MODIFYGROUP関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_modifygroup.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、グループメンバー、グループ名を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_modifygroup.jsp」を実行します。
Code Block |
---|
| <% out.write("Last Name: " + ap.getLastName() + "<br>");
/* out.write("Initial: " + ap.getInitial() + "<br>"); out.write("Salutation Code: " + ap.getSalutationCode() + "<br>");ws_modifygroup.jsp out.write("Role Code: " + ap.getRoleCode() + "<br>");
out.write("Email Address: " + ap.getEmailAddress() + "<br>");
out.write("Language Code: " + ap.getLanguageCode() + "<br>");
out.write("IpId: " + ap.getIpId() + "<br>");
out.write("Time Zone Code: " + ap.getTimeZoneCode() + "<br>");
out.write("Status: " + ap.getStatus() + "<br>");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode() );
}
%> |
|
Expand |
---|
|
こちらのWebサービスは、ユーザーのプロフィール画像を取得するために使用されます。ユーザーがYellowfinにプロフィール画像を設定していない場合は、画像は取得されません。こちらのサービスは、ユーザーの内部ID(IP ID)を要求します。 リクエストパラメーター以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービスに接続する管理者アカウントです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「GETAVATARS」に設定します。 | Parameters | String[] | プロフィール画像を取得するYellowfinユーザーの内部ID(または、IpId)が含まれる配列です。各IDは、Integerのものもすべて、Stringとして渡されなくてはいけません。 |
リクエストの例以下は、こちらのリクエストのSOAP XMLの例です。 Code Block |
---|
| <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>
<function>GETAVATARS</function>
<parameters>5</parameters>
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答のパラメーター返される応答には、これらののパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 | binaryAttachments | ReportBinaryObject[] | 指定したユーザーのプロフィール画像を含みます。 |
応答の例サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <S:Envelope xmlns:S */
%>
<%@ 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);
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("MODIFYGROUP");
//Specify client org (if omitted, default (primary) org will be searched):
rsr.setOrgRef("org1");
//Set parameters of the new group:
AdministrationGroup group = new AdministrationGroup();
group.setGroupName("Test Group"); // mandatory. Other parameters are optional.
//Add members:
AdministrationGroupMember[] member = new AdministrationGroupMember[1];
member[0] = new AdministrationGroupMember();
member[0].setLoginId("admin@yellowfin.com.au");
group.setGroupMembers(member);
rsr.setGroup(group);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode() );
}
%> |
|
Expand |
---|
|
こちらの関数は、グループの名前を変更するために使用します。AdministrationGroupオブジェクトと、グループのIDを使用して対象のグループを指定します。グループIDは、Yellowfinのデータベース(AccessGroupテーブルのAccessGroupIdフィールド)、またはグループ名とresponse.getGroup().getGroupId()を取得してGETGROUPを呼び出すことで取得することができます。
リクエスト要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「RENANEGROUP」に設定します。 | Group | AdministrationGroup | 名前を変更するユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | 指定したクライアント組織に新規グループを追加する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト組織内にグループが作成されます。 |
以下は、こちらの関数のAdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationGroup要素 | データ型 | 説明 | GroupId | Integer | グループを識別するための内部IDです。 | GroupName | String | グループの新しい名前です。 | GroupDescription | String | グループの説明です。 |
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:remoteAdministrationCallResponse xmlns:ns2web="http://webservices.web.mi.hof.com/">
<soapenv:Header/>
<soapenv:Body>
<return> <web:remoteAdministrationCall>
<binaryAttachments> <arg0>
<data>iVBORw0KGgoAAAANSUhEUgAAA <loginId>admin@yellowfin.com.. your image string</data>au</loginId>
<password>test</password>
<<orgId>1</binaryAttachments>orgId>
<errorCode>0</errorCode><function>RENAMEGROUP</function>
<group>
<messages>Successfully Authenticated User: admin@yellowfin.com.au</messages> <groupId>13001</groupId>
<messages>Web Service Request<groupName>Report Complete</messages>Creators</groupName>
<groupDescription>Users of this group will create <sessionId>5547ebe153fd0fc7fcf63014ffe61b5c<reports.</sessionId>groupDescription>
<statusCode>SUCCESS</statusCode></group>
</return>arg0>
</ns2web:remoteAdministrationCallResponse>remoteAdministrationCall>
</Ssoapenv:Body>
</Ssoapenv:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
|
|
管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含む、こちらの関数の基礎的なリクエストから開始します。
code応答の要素
返される応答には、これらのパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。
Code Block |
---|
|
language | java |
---|
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("GETAVATARS"); |
- 応答には、StatusCode要素と、BinaryAttachment配列が含まれます。
最初の画像を取得するためには、以下を使用します。
Code Block |
---|
|
byte[] data = response.getBinaryAttachments[0].getData(); |
完成例
以下は、Webサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_getavatar.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_getavatar.jsp」を実行します。
Code Block |
---|
|
<%<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>
ws_getavatars.jsp <messages>Web Service Request Complete</messages>
*/ %> <%@ 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.*" %>
<html>
<body>
<%
AdministrationServiceService s_adm = new AdministrationServiceServiceLocator("localhost",8080, "/services/AdministrationService", false); <sessionId>2ca79b1696913aa7a4f8b601ac1641a4</sessionId>
<statusCode>SUCCESS</statusCode>
</return>
// adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
Expand |
---|
|
以下は、こちらの関数の基礎的なリクエストです。
Code Block |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
|
// provide your Yellowfin web services admin account
rsr.setPassword("test");
rsr.setOrgId(1);
|
// set to the password of the above account
rsr.setOrgId(1);
rsr.setFunction("GETAVATARS");
rsr.setParameters(new String[] {"5","13073"});
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
ReportBinaryObject[] objects = rs.getBinaryAttachments();
if (objects != null) {rsr.setFunction("RENAMEGROUP"); |
指定したクライアント組織に所属するグループを検索する場合は、クライアント組織IDを含めます。(こちらを含めない場合は、デフォルト(プライマリー)組織内のグループが検索されます。)
Code Block |
---|
| rsr.setOrgRef("org1"); |
名前を変更するグループを定義します。
Code Block |
---|
| AdministrationGroup group = new AdministrationGroup(); |
グループIDを使用して、グループを識別します。
Code Block |
---|
| group.setGroupId(13002); |
新しいグループ名と説明を提供します。
Code Block |
---|
| group.setGroupName("Org 1");
group.setGroupDescription("Organization 1 user group");
rsr.setGroup(group); |
リクエストの構成が完了したら、呼び出しを実行します。
Code Block |
---|
| AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
|
完成例
以下は、RENAMEGROUP関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_renamegroup.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、グループメンバー、グループIDを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_renamegroup.jsp」を実行します。
Code Block |
---|
|
<%
/* ws_renamegroup.jsp byte[] data,encodeBase64; String base64Encoded; */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
for(ReportBinaryObject o: objects){
data = o.getData();
if (data != null){
encodeBase64 = java.util.Base64.getEncoder().encode(data<%@ 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 base64Encoded = new String(encodeBase64, "UTF-8account
rsr.setPassword("test"); if (base64Encoded != null) //password of the account above
rsr.setOrgId(1);
rsr.setFunction("RENAMEGROUP");
out.writersr.setOrgRef("<br>org1"); %> // provide org reference if required. Default org will be searched otherwise
AdministrationGroup <imggroup src="data:image/jpg;base64,<%=base64Encoded%>" alt="No image">= new AdministrationGroup();
group.setGroupId(13002); <% // identify the group to }rename
group.setGroupName("Org1"); } } } else// {new group name
outgroup.writesetGroupDescription("FailureOrganization 1 user group"); out.write(" Code: " + // new description
rsr.setGroup(group);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success.<br>");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
}
%>
</body>
</html> |
Expand |
---|
title | VALIDATEUSERDELETEGROUP |
---|
|
こちらの関数は、Yellowfinのユーザーを検証します。AdministrationPersonオブジェクトをパラメーターに使用して、ユーザーを指定することができます。 提供された詳細を持つユーザーが存在する場合、応答はSUCCESSを返します。ユーザーが有効でない場合は、コード25(COULD_NOT_AUTHENTICATE_USER)が応答に返されます。 リクエストの要素以下の要素は、こちらのリクエストとともに渡されます。グループ名を提供することで、Yellowfinから既存のユーザーグループを削除する場合は、こちらのwebサービスを呼び出します。
リクエストパラメーター以下のパラメーターは、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、こちらの関数を実行するWebサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「VALIDATEUSERDELETEGROUP」に設定します。 | PersonGroup | AdninistrationPerson | 検証されるユーザーの詳細を含むオブジェクトです。注意:以下の表を参照してください。AdministrationGroup | 削除するユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | クライアント組織参照IDです(こちらの設定はオプションです)。特定の組織のユーザーの検証が必要な場合は、こちらを設定します。指定したクライアント組織に所属するグループを検索する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト組織内のグループが検索されます。 |
以下は、こちらの関数のために「AdministrationPerson」オブジェクトに設定しなくてはいけない主要なパラメーターです。 AdministrationPerson要素データ型説明以下は、こちらの関数のAdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。 User IDAdministrationGroup要素 | Stringデータ型 | 検証するユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。説明 | PasswordGroupName | String | 上記アカウントのパスワードです。削除するグループの名前です。 |
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 リクエストの例以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 | codexml | theme | Eclipse | language | 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>
<function>VALIDATEUSER<<function>DELETEGROUP</function>
<person> <group>
<userId>admin@yellowfin.com.au</userId><groupName>Admin</groupName>
<password>test</password></group>
</person>
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> | 応答の要素
応答のパラメーター返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 Person |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 AdministrationPerson | ユーザー詳細を含むオブジェクトです。 |
応答の例
サービスは、今回のSOAPの例に基づき、以下の応答を返します。
codelanguage | xml |
---|
theme | Eclipse | language | xml |
---|
|
<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>
<person>
<ipId>5</ipId>
<userId>admin@yellowfin.com.au</userId>
</person>
<sessionId>0ee8ae23d21ff01f365d1e03ea49c47a</<sessionId>db18f2503e80ca02a9d37da13fc540a5</sessionId>
<statusCode>SUCCESS</statusCode>
</return>
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
Expand |
---|
|
AdministrationPersonオブジェクトを介して、ユーザーIDを提供します。指定したクライアント組織に所属するグループを検索する場合は、クライアント組織IDを含めます。こちらを含めない場合は、デフォルト(プライマリー)組織内のグループが検索されます。
| code | rsr.setOrgRef("org1"); |
削除するグループのパラメーターを設定します。
Code Block |
---|
| AdministrationPerson ap | AdministrationGroup group = new AdministrationPersonAdministrationGroup();
apgroup.setUserIdsetGroupName("john.smith@yellowfin.com.auTest Group");
ap.setPassword("test");
rsr.setPersonsetGroup(apgroup); |
特定の組織のユーザーの検証が必要な場合は、クライアント組織参照IDを提供します。 リクエストの構成が完了したら、呼び出しを実行します。
Code Block |
---|
theme | Eclipse |
---|
| rsr.setOrgRef("org1"); |
OrgRefパラメーターが省略された場合、ユーザーはデフォルト(プライマリー)組織に対して検証されます。 |
完成例
以下は、VALIDATEUSER関数の完成例です。こちらを使用するには、以下の手順に従います。以下は、DELETEGROUP関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_validateuserdeletegroup.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。環境に応じて、ホスト、ポート番号、管理ユーザー、グループ名を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_validateuserdeletegroup.jsp」を実行します。
Code Block |
---|
|
codejava | theme | Eclipse |
---|
language | java |
---|
|
<%
/* ws_validateuserdeletegroup.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"); // changeset to the password of the above account
rsr.setOrgId(1);
rsr.setFunction("VALIDATEUSERDELETEGROUP");
AdministrationPerson ap = new AdministrationPerson();
ap.setUserId("john.smith@yellowfin.com.au");
ap.setPassword("test");
rsr.setPerson(ap);
rsr.setOrgRef("org1");rsr.setOrgRef("org1"); // specify a client org reference if required. Or skip this to search through the default org
AdministrationGroup group = new AdministrationGroup();
group.setGroupName("Test Group"); // this group must exist in the specified client org
rsr.setGroup(group);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("User is authenticatedSuccess.<br>");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode() );
}
%> |
Expand |
---|
title | VALIDATEPASSWORDINCLUDEUSERINGROUP |
---|
|
こちらの呼び出しは、ユーザーのパスワードを検証します。パスワードの有効期限が切れている場合、StatusCodeとしてSUCCESSを返します。それ以外の場合は、FAILUREを返します。こちらの関数は、指定したYellowfinのユーザーを、指定したユーザーグループに追加する場合に使用します。 Yellowfinにログインをしていない新規ユーザーの場合は、パスワードの有効期限が切れているため、呼び出しはSUCCESSを取得します。これは、新規ユーザーの初回ログイン時に、Yellowfinはパスワードのリセットを要求するからです。こちらのリクエストは、ユーザーを指定するAdministrationPersonオブジェクト、ユーザーグループを定義するAdministrationGroupオブジェクトを要求します。
リクエストパラメーターリクエストの要素以下の要素は、こちらのリクエストとともに渡されます。以下のパラメーターは、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「VALIDATE PASSWORDINCLUDEUSERINGROUP」に設定します。 | Person | AdninistrationPerson | パスワードが検証されるユーザーの詳細を含むオブジェクトです。注意:以下の表を参照してください。 |
以下は、こちらの関数のために「AdministrationPerson」オブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationPerson | グループに追加するユーザーの詳細を含むオブジェクトです。以下の表を参照してください。 | Group | AdministrationGroup | 追加するユーザーのユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | 指定したクライアント組織内のグループを検索する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト組織内のグループが検索されます。 |
以下は、こちらの関数のAdministrationPersonオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationPerson要素 | データ型 | 説明 | UserId | String | パスワードが検証されるユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 | Password | String | 上記アカウントのパスワードです。 |
リクエストの例グループに追加する既存のYellowfinユーザーです。これは、ログイン方法に応じて、ユーザーID、または電子メールアドレスになります。 |
以下は、こちらの関数のAdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationGroup要素 | データ型 | 説明 | GroupName | String | ユーザーを追加するグループの名前です。 |
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
language | xml |
---|
theme | Eclipse | language | 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>
<function>VALIDATEPASSWORD<<function>INCLUDEUSERINGROUP</function>
<person>
<userId>admin@yellowfin<userId>binish.sheikh@yellowfin.com.au</userId>
</person>
<group>
<password>test</password> <groupName>Administrators</groupName>
</person>group>
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答のパラメーター応答の要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 応答の例サービスは、今回のSOAPの例に基づき、以下の応答を返します。 | codexml | theme | Eclipse | language | xml |
---|
| <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>fb024963bdc94034557f95b01f53a138<<sessionId>a26d9c279a9c1a4f0dfda86424ca4267</sessionId>
<statusCode>FAILURE<<statusCode>SUCCESS</statusCode>
</return>
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| 指定したクライアント組織に所属するグループを検索する場合は、クライアント組織を指定します。こちらを含めない場合は、デフォルト(プライマリー)組織内のグループが検索されます。AdministrationPersonオブジェクトを介して、ユーザーIDを提供します。
| codejava | theme | Eclipse |
---|
language | java |
---|
| AdministrationPerson rsr.setOrgRef("org1"); |
グループに追加する既存ユーザーを識別するパラメーターを設定します。
Code Block |
---|
| AdministrationPerson ap = new AdministrationPerson();
ap.setUserId("john.smith@yellowfin.com.au"); // must be an existing Yellowfin user
rsr.setPerson(ap.setPassword("test); |
ユーザーを含めるグループのパラメーターを設定します。
Code Block |
---|
| AdministrationGroup group = new AdministrationGroup();
group.setGroupName("Administrators");
rsr.setPersonsetGroup(apgroup); |
リクエストの構成が完了したら、呼び出しを実行します。
| codejava | theme | Eclipse |
---|
language | java |
---|
| AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
| 完成例以下は、VALIDATEPASSWORD関数の完成例です。こちらを使用するには、以下の手順に従います。以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_validatepasswordincludeuseringroup.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。環境に応じて、ホスト、ポート番号、管理ユーザー、既存ユーザー、グループ名を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_validatepasswordincludeuseringroup.jsp」を実行します。
| codejava | theme | Eclipse |
---|
language | java |
---|
| <%
/* ws_validatepwdincludeuseringroup.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"); // changeset to the password of the above account
rsr.setOrgId(1);
rsr.setFunction("VALIDATEPASSWORDINCLUDEUSERINGROUP");
AdministrationPerson ap = new AdministrationPerson();
ap.setUserId("john.smith@yellowfin.com.au");
ap.setPassword("test");
rsr.setPerson(ap);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Password is expired");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode() );
}
%> |
|
ユーザー情報の操作
ユーザーの詳細は、Webサービスの呼び出しを使用して、後から変更することができます。AdministrationPersonオブジェクトのUser IDフィールドは、ユーザーを識別するために使用されるため、変更することができません。AdministrationPersonオブジェクトのその他のフィールドには、新しい変更内容が投入されます。
Expand |
---|
|
こちらの関数は、指定したYellowfinユーザーのパスワードを変更します。パスワードは、ユーザーID(ログインIDの方法に応じて、電子メールアドレス、またはその他のタイプのIDになります。)をもとに、AdministrationPersonパラメーターを通してリセットされます。 リクエストの要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「CHANGEPASSWORD」に設定します。 | Person | AdninistrationPerson | パスワードを変更するユーザーの詳細を含むオブジェクトです。注意:以下の表を参照してください。 |
以下は、こちらの関数のために「AdministrationPerson」オブジェクトに設定しなくてはいけない主要なパラメーターです。 AdministrationPerson要素 | データ型 | 説明 | UserId | String | パスワードを変更するユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 | Password | String | ユーザーの新規パスワードです。これは、Yellowfinのパスワードポリシーに準拠していなくてはいけません。 |
リクエストの例以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <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>
<function>CHANGEPASSWORD</function>
<person>
<userId>admin@yellowfin.com.au</userId>
<password>test321</password>
</person>
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答の要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。 |
応答の例サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <S:Envelope xmlns:S
//Specify a client org (if omitted, default (primary) org groups will be searched):
rsr.setOrgRef("org1");
//Identify a user:
AdministrationPerson ap = new AdministrationPerson();
ap.setUserId("john.smith@yellowfin.com.au"); // must be an existing Yellowfin user
rsr.setPerson(ap);
//Specify group to add the user to
AdministrationGroup group = new AdministrationGroup();
group.setGroupName("Administrators"); // must be an existing user group
rsr.setGroup(group);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
}
%> |
|
Expand |
---|
|
こちらの関数は、複数の指定したYellowfinユーザーを、指定したユーザーグループに追加する場合に使用します。 こちらのリクエストは、ユーザーを指定するAdministrationPersonオブジェクト、ユーザーグループを定義するAdministrationGroupオブジェクトを要求します。
リクエストパラメーター以下のパラメーターは、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「INCLUDEUSERSINGROUP」に設定します。 | Person | AdministrationPerson[] | グループに追加するユーザーの詳細を含むオブジェクト配列です。以下の表を参照してください。 | Group | AdministrationGroup | 追加するユーザーのユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | 指定したクライアント組織内のグループを検索する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト組織内のグループが検索されます。 |
以下は、こちらの関数のAdministrationPersonオブジェクト配列に設定しなくてはいけない主要なパラメーターです。AdministrationPerson要素 | データ型 | 説明 | UserId | String | グループに追加する既存のYellowfinユーザーです。これは、ログイン方法に応じて、ユーザーID、または電子メールアドレスになります。 |
以下は、こちらの関数のAdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationGroup要素 | データ型 | 説明 | GroupName | String | ユーザーを追加するグループの名前です。 |
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:remoteAdministrationCallResponse xmlns:ns2web="http://webservices.web.mi.hof.com/">
<soapenv:Header/>
<soapenv:Body>
<return> <web:remoteAdministrationCall>
<errorCode>0</errorCode> <arg0>
<messages>Successfully Authenticated User: admin@yellowfin <loginId>admin@yellowfin.com.au</messages>loginId>
<password>test</password>
<messages>Web Service Request Complete</messages> <orgId>1</orgId>
<sessionId>f6bdc33348cd76d7898f3bed3e54ff31</sessionId> <function>INCLUDEUSERSINGROUP</function>
<statusCode>SUCCESS</statusCode> <people>
</return> </ns2:remoteAdministrationCallResponse><userId>binish.sheikh@yellowfin.com.au</userId>
</S:Body> </S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| Code Block |
---|
| こちらは、この呼び出しの基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
Code Block |
---|
| | AdministrationServiceRequest rsr = new AdministrationServiceRequest(); rsr<userId>admin@yellowfin. setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("CHANGEPASSWORD");
完成例以下は、CHANGEPASSWORD関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_changepassword.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_changepassword.jsp」を実行します。
<% com.au</userId>
</people>
<group>
<groupName>Administrators</groupName>
</group>
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答のパラメーター返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:remoteAdministrationCallResponse /*xmlns:ns2="http://webservices.web.mi.hof.com/">
<return>
ws_changepwd.jsp <errorCode>0</errorCode>
*/ %> <%@ 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); <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages>
<messages>Web Service Request Complete</messages>
// adjust host<sessionId>799b3c35c5359c6105586e426f1b9f8c</sessionId>
and port number AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au"); <statusCode>SUCCESS</statusCode>
</return>
// provide your Yellowfin web services admin account</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 こちらの関数は、ユーザーのYellowfinアカウントをリセットし、パスワードを変更するよう要求します。この呼び出しがアカウントのパスワードを変更するのではありません。パスワードを変更するには、CHANGEPASSWORD関数を使用します。 リクエストの要素以下の要素は、こちらのリクエストとともに渡されます。 | リクエスト要素 | Expand |
---|
|
こちらの関数の基礎的なリクエストから開始します。
Code Block |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("INCLUDEUSERSINGROUP"); |
changetothepasswordoftheaboveaccountrsr.setOrgId(1);setFunction"CHANGEPASSWORD"
AdministrationPerson ap AdministrationPerson
apsetUserIdjohn.smith@yellowfin.com.auap.setPassword("test123");
rsr.setPerson(ap);
AdministrationServiceResponsers= adminService.remoteAdministrationCall(rsr);if("SUCCESS".equals(rs.getStatusCode())){out.write("Passwordisreset");
} else {
//must be an existing group
|
outwrite"Failure" outwrite(" Code: " + rs.getErrorCode() );
}
%> |
Expand |
---|
|
LoginId 以下は、こちらの関数のために「AdministrationPerson」オブジェクトに設定しなくてはいけない主要なパラメーターです。 AdministrationPerson要素 | データ型 | 説明 | UserId | String | パスワードをリセットするユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 | Password | String | 上記アカウントのパスワードです。 |
リクエストの例以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
<soapenv:Header/>
<soapenv:Body>
<web:remoteAdministrationCall> |
| Yellowfin Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 |
Password | String | 上記アカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 |
Function | String | Webサービス関数です。こちらは、「RESETPASSWORD」に設定します。 |
Person | AdninistrationPerson | パスワードをリセットしなくてはいけないユーザーの詳細を含むオブジェクトです。注意:以下の表を参照してください。 |
Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
|
完成例
以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_includeusersingroup.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、既存ユーザー、グループ名を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_includeusersingroup.jsp」を実行します。
Code Block |
---|
|
<%
/* ws_includeusersingroup.jsp <arg0> */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.hof.util.*, <loginId>admin@yellowfin.com.au</loginId>
<password>test321</password>
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); <orgId>1<//orgId> adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) <function>RESETPASSWD</function>
s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au"); <person> // provide your Yellowfin web services admin account
rsr.setPassword("test"); <userId>admin@yellowfin.com.au</userId> <password>test321</password>
// set to password of the above account
rsr.setOrgId(1);
rsr.setFunction("INCLUDEUSERINGROUP");
<//person>Specify a client org (if omitted, default (primary) org groups will </arg0>
be searched):
rsr.setOrgRef("org1");
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答の要素
返される応答には、これらのパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。 |
応答の例
サービスは、今回のSOAPの例に基づき、以下の応答を返します。
Code Block |
---|
|
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">//Provide all the users that are to be included:
AdministrationPerson[] ap = new AdministrationPerson[1];
ap[0] = new AdministrationPerson();
ap[0].setUserId("john.smith@yellowfin.com.au"); <return> // must be an existing Yellowfin user
rsr.setPerson(ap);
<errorCode>0</errorCode>
//Specify group to add the users to
AdministrationGroup group <messages>Successfully= Authenticated User: admin@yellowfin.com.au</messages>new AdministrationGroup();
group.setGroupName("Administrators"); <messages>Web Service Request Complete<//messages> must be an existing user group
rsr.setGroup(group);
<sessionId>beabd94a9ffaa562a8b9ba823fc291a0</sessionId>
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
<statusCode>SUCCESS</statusCode> out.write("Success");
} else {
</return>
out.write("Failure");
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
Expand |
---|
|
こちらは、この呼び出しの基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
Code Block |
---|
|
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("RESETPASSWD"); |
完成例
以下は、RESETPASSWORD関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_resetpassword.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_resetpassword.jsp」を実行します。
Code Block |
---|
|
<%
/* out.write(" Code: " + rs.getErrorCode());
}
%> |
Expand |
---|
title | EXCLUDEUSERFROMGROUP |
---|
|
こちらの関数は、指定したYellowfinユーザーを、指定したユーザーグループに追加しますが、「含めない」タグが追加されます。ユーザーはグループから削除されるのではなく、除外されたメンバーとして存在することになります。 Image Added
こちらのリクエストは、ユーザーを指定するAdministrationPersonオブジェクト、ユーザーグループを定義するAdministrationGroupオブジェクトを要求します。
リクエストパラメーター以下のパラメーターは、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「EXCLUDEUSERFROMGROUP」に設定します。 | Person | AdministrationPerson | グループから除外されるユーザーの詳細を含むオブジェクトです。以下の表を参照してください。 | Group | AdministrationGroup | ユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | 指定したクライアント組織内のグループを検索する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト組織内のグループが検索されます。 |
以下は、こちらの関数のAdministrationPersonオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationPerson要素 | データ型 | 説明 | UserId | String | グループから除外する既存のYellowfinユーザーです。これは、ログイン方法に応じて、ユーザーID、または電子メールアドレスになります |
以下は、こちらの関数のAdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationGroup要素 | データ型 | 説明 | GroupName | String | ユーザーを除外するグループの名前です。 |
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
<soapenv:Header/>
<soapenv:Body>
<web:remoteAdministrationCall>
ws_ resetpwd.jsp <arg0>
*<loginId>admin@yellowfin.com.au</
%>
<%@ 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);loginId>
<password>test</password>
<orgId>1</orgId>
<function>EXCLUDEUSERFROMGROUP</function>
<person>
// adjust host and port number AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService(); <userId>binish.sheikh@yellowfin.com.au</userId>
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au"); </person>
//<group>
provide your Yellowfin web services admin account rsr.setPassword("test"); <groupName>Administrators</groupName>
</group> // change to the password of the account above rsr.setOrgId(1); rsr.setFunction("RESETPASSWD");
AdministrationPerson ap = new AdministrationPerson(); ap.setUserId("john.smith@yellowfin.com.au");
rsr.setPerson(ap);</arg0>
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);</web:remoteAdministrationCall>
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Account is reset");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode() );
}
%> |
|
Expand |
---|
|
こちら呼び出しは、ユーザーの詳細を編集します。これは、ユーザーID(例:ログインID方法に応じて、電子メールアドレス、または他のタイプのIDになります)を提供することで、ユーザーの識別に使用することのできるAdministrationPersonオブジェクトをパラメーターとして受け付けます。 応答には、すべてのユーザー詳細を含むAdministrationPersonオブジェクトが含まれます。 注意:この呼び出しがアカウントのパスワードを変更するのではありません。パスワードを変更するには、CHANGEPASSWORD関数を使用します。 リクエストの要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「UPDATEUSER」に設定します。 | Person | AdninistrationPerson | 更新しなくてはいけないユーザーの詳細を含むオブジェクトです。注意:以下の表を参照してください。 |
以下は、こちらの関数のために「AdministrationPerson」オブジェクトに設定しなくてはいけない主要なパラメーターです。 AdministrationPerson要素 | データ型 | 説明 | UserId | String | 詳細を変更するユーザーを識別するためのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 | 更新しなくてはいけないユーザーの詳細に関連する任意のパラメーターを提供することができます。例えば、新しい名や、更新が必要なステータスなどです。 |
リクエストの例以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。今回は、ユーザーのステータスを「無効(Inactive)」にする例を示しています。 Code Block |
---|
| <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></soapenv:Body>
</soapenv:Envelope> |
応答のパラメーター返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <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>c15a0993df4f37f4dbff9b3244f41ea2</sessionId>
<statusCode>SUCCESS</statusCode>
</return>
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| こちらの関数の基礎的なリクエストから開始します。
Code Block |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("EXCLUDEUSERFROMGROUP"); |
<password>test<password>
<orgId>1</orgId>
<function>UPDATEUSER</function>
|
完成例以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_excludeuserfromgroup.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、除外するユーザー、グループ名を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_excludeuserfromgroup.jsp」を実行します。
Code Block |
---|
| <%
/* <person> <userId>binish.sheikh@yellowfin.com.au</userId>ws_ excludeuserfromgroup.jsp <status>ACTIVE<*/status>
%>
<%@ page </person>
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答の要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。 | Person | AdministrationPerson | 更新されたユーザーの詳細を含むオブジェクトです。 |
応答の例サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
<return>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"); <errorCode>0<//errorCode> provide your Yellowfin web services admin account
rsr.setPassword("test"); <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages> <messages>Getting user information...</messages> // set the password of the above account
<messages>Getting
user information...</messages>rsr.setOrgId(1);
rsr.setFunction("EXCLUDEUSERFROMGROUP");
//Specify the client org (if <messages>Webomitted, Servicethe Request Complete</messages>
default (primary) org groups will be searched):
rsr.setOrgRef("org1");
<person>
//Specify a user to exclude:
AdministrationPerson ap = new <emailAddress>binish.sheikh@yellowfinAdministrationPerson();
ap.setUserId("john.smith@yellowfin.com.au</emailAddress>au"); <firstName>Binish</firstName>
// must be an existing Yellowfin use
rsr.setPerson(ap);
<ipId>13000<//ipId>Specify which group to exclude from:
AdministrationGroup group = new AdministrationGroup();
<lastName>Sheikh</lastName>group.setGroupName("Administrators"); <roleCode>YFADMIN<//roleCode> must be an existing user group
rsr.setGroup(group);
AdministrationServiceResponse rs = <status>ACTIVE</status>adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success");
} else {
<timeZoneCode>AUSTRALIA/BRISBANE</timeZoneCode> out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
<userId>binish.sheikh@yellowfin.com.au</userId>
</person>
<sessionId>586e172a7c4850bb3edbaaf5264a312d</sessionId>
<statusCode>SUCCESS</statusCode>
</return>
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
|
|
こちらは、この呼び出しの基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
Code Block |
---|
|
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("UPDATEUSER"); |
詳細が更新されるユーザーを識別するために、AdministrationPersonオブジェクトを使用します。
Code Block |
---|
|
AdministrationPerson ap = new AdministrationPerson();
ap.setUserId("john.smith@yellowfin.com.au"); |
変更する詳細を指定します。例えば、ユーザーアカウントを無効(Inactive)にすることができます。
Code Block |
---|
|
ap.setStatus("INACTIVE"); // This shows that the user "john.smith@yellowfin.com.au" will not be able to log in
rsr.setPerson(ap); |
リクエストの構成が完了したら、呼び出しを実行します。
Code Block |
---|
|
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
完成例
以下は、UPDATEUSER関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_updateuser.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_updateuser.jsp」を実行します。
Code Block |
---|
|
<%
/* ws_updateuser.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 above account
rsr.setOrgId(1);
rsr.setFunction("UPDATEUSER");
AdministrationPerson ap = new AdministrationPerson();
ap.setUserId("john.smith@yellowfin.com.au");
ap.setStutus("INACTIVE");
rsr.setPerson(ap);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
ap = rs.getPerson();
out.write("User Id: " + ap.getUserId() + "<br>");
out.write("Password: " + ap.getPassword() + "<br>");
out.write("First Name: " + ap.getFirstName() + "<br>");
out.write("Last Name: " + ap.getLastName() + "<br>");
out.write("Initial: " + ap.getInitial() + "<br>");
out.write("Salutation Code: " + ap.getSalutationCode() + "<br>");
out.write("Role Code: " + ap.getRoleCode() + "<br>");
out.write("Email Address: " + ap.getEmailAddress() + "<br>");
out.write("Language Code: " + ap.getLanguageCode() + "<br>");
out.write("IpId: " + ap.getIpId() + "<br>");
out.write("Time Zone Code: " + ap.getTimeZoneCode() + "<br>");
out.write("Status: " + ap.getStatus() + "<br>");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode() );
}
%> |
Expand |
---|
|
こちらのWebサービスは、指定したユーザーのプロフィール画像をアップロードするために使用されます。画像は、文字列値に変換可能な、UTF-8のバイト配列でなければいけません。
リクエストの要素
以下の要素は、こちらのリクエストとともに渡されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 |
Password | String | 上記アカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 |
Function | String | Webサービス関数です。こちらは、「SETAVATARIMAGE」に設定します。 |
Person | AdninistrationPerson | プロフィール画像を変更するユーザーの詳細を含むオブジェクトです。注意:以下の表を参照してください。 |
Parameters | String[] | アップロードされるプロフィールど画像を表示する単一要素を含む配列です。画像は、文字列に変換可能な、UTF-8形式のバイト配列でなければいけません。 |
以下は、こちらの関数のために「AdministrationPerson」オブジェクトに設定しなくてはいけない主要なパラメーターです。
AdministrationPerson要素 | データ型 | 説明 |
IpId | Integer | ユーザーの内部Yellowfin IP IDを提供します。値は、YellowfinのデータベースのPersonパラメーターのIpIdフィールドに保存されます。 |
リクエストの例
以下は、こちらのリクエストのSOAP XMLの例です。
Code Block |
---|
|
<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>
<function>SETAVATARIMAGE</function>
<person>
<ipId>5</ipId>
</person>
<parameters>
<string>iVBORw0KGgoAAAANSUhEUgAAAdsAAA ... your image string</string>
</parameters>
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答のパラメーター
返される応答には、これらのパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。 |
応答の例
サービスは、今回のSOAPの例に基づき、以下の応答を返します。
Code Block |
---|
|
<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>5fbbf0f2d8a6f4902adde5bfb659fed7</sessionId>
<statusCode>SUCCESS</statusCode>
</return>
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
Expand |
---|
|
管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含む、こちらの関数の基礎的なリクエストから開始します。
Code Block |
---|
|
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("SETAVATARIMAGE"); |
IP IDを提供することで、ユーザーを指定することができます。
Code Block |
---|
|
AdministrationPerson ap = new AdministrationPerson();
ap.setIpId(5);
rsr.setPerson(ap); |
java.nio.fileライブラリを使用して画像ファイルを選択します。
Code Block |
---|
|
Path path = Paths.get("D:/TMP/fish.jpg"); // existing image file
byte[] data = Files.readAllBytes(path);
byte[] encodeBase64 = java.util.Base64.getEncoder().encode(data);
String img = new String(encodeBase64, "UTF-8");
rsr.setParameters(new String[] {img}); |
リクエストの構成が完了したら、呼び出しを実行します。
Code Block |
---|
|
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
完成例
以下は、こちらのWebサービスの呼び出しの完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_setavatarimage.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_setavatarimage.jsp」を実行します。
Code Block |
---|
|
<%
/* ws_setavatarimage.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.*" %>
<%@ page import="java.nio.file.Files" %>
<%@ page import="java.nio.file.Paths" %>
<%@ page import="java.nio.file.Path" %>
<%
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 above account
rsr.setOrgId(1);
rsr.setFunction("SETAVATARIMAGE");
AdministrationPerson ap = new AdministrationPerson();
ap.setIpId(5);
rsr.setPerson(ap);
Path path = Paths.get("D:/TMP/fish.jpg"); // existing image file
byte[] data = Files.readAllBytes(path);
byte[] encodeBase64 = java.util.Base64.getEncoder().encode(data);
String img = new String(encodeBase64, "UTF-8");
rsr.setParameters(new String[] {img});
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("<br>Success");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCode());
}
%> |
ユーザーセッションの終了
これらのサービスは、Yellowfinユーザーのセッションを終了することができます。
Expand |
---|
|
こちらのサービスは、Yellowfinのセッションを終了しますが、ユーザーをログアウトさせるために「LoginSessionId」を要求します。これはユーザーを識別するに十分であるため、ユーザーIDは要求されません。LOGINUSER、またはLOGINUSERNOPASSWORD関数とともにシングルサインオンが実行されている場合、以下を介してLoginSessionIdを取得することができます。 Code Block |
---|
| String token = response.getLoginSessionId(); |
こちらの値を保存することで、後ほどLOGOUTUSERリクエストに渡すことができます。 Code Block |
---|
| request.setLoginSessionId(token); |
リクエストの要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「LOGOUTUSER」に設定します。 | Person | AdninistrationPerson | プロフィール画像を変更するユーザーの詳細を含むオブジェクトです。注意:以下の表を参照してください。 | LoginSessionId | String | 終了しなくてはいけないYellowfinインスタンスのセッショントークンです。これは、ユーザーを識別するに十分です。 |
こちらの関数のために「AdministrationPerson」オブジェクトに設定しなくてはいけない主要なパラメーターです。 AdministrationPerson要素 | データ型 | 説明 | UserId | String | 詳細を変更するユーザーを識別するためのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 | Password | String | 上記アカウントのパスワードです。 |
リクエストの例以下は、上記のパラメーターを使用して、こちらの関数のリクエストを示すSOAP XMLの例です。 Code Block |
---|
| <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>
<function>LOGOUTUSER</function>
<person>
<userId>admin@yellowfin.com.au</userId>
<password>test</password>
</person>
<loginSessionId>39fb11047affb98c9d081fb48bed0093</loginSessionId>
}
%> |
|
Expand |
---|
title | EXCLUDEUSERSFROMGROUP |
---|
|
こちらの関数は、複数の指定したYellowfinユーザーを、指定したユーザーグループに追加しますが、「含めない」タグが追加されます。これらのユーザーはグループから削除されるのではなく、除外されたメンバーとして存在することになります。 Image Added
こちらのリクエストは、ユーザーを指定するAdministrationPersonオブジェクトの配列、ユーザーグループを定義するAdministrationGroupオブジェクトを要求します。
リクエストパラメーター以下のパラメーターは、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「EXCLUDEUSERSFROMGROUP」に設定します。 | Person | AdministrationPerson[] | グループから除外されるユーザーの詳細を含むオブジェクト配列です。以下の表を参照してください。 | Group | AdministrationGroup | ユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | 指定したクライアント組織内のグループを検索する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト組織内のグループが検索されます。 |
以下は、こちらの関数のAdministrationPersonオブジェクト配列に設定しなくてはいけない主要なパラメーターです。AdministrationPerson要素 | データ型 | 説明 | UserId | String | グループから除外する既存のYellowfinユーザーです。これは、ログイン方法に応じて、ユーザーID、または電子メールアドレスになります |
以下は、こちらの関数のために、AdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationGroup要素 | データ型 | 説明 | GroupName | String | ユーザーを除外するグループの名前です。 |
応答のパラメーター返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| こちらの関数の基礎的なリクエストから開始します。
Code Block |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("EXCLUDEUSERSFROMGROUP"); |
<arg0>must be an existing user group
|
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答の要素Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
| 完成例応答の例以下は、上記のSOAP XMLの呼び出しの応答です。 Code Block |
---|
|
|
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_excludeusersfromgroup.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、除外するユーザー、グループ名を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_excludeusersfromgroup.jsp」を実行します。
Code Block |
---|
|
<% <return>
/* <errorCode>0</errorCode> ws_ excludeusersfromgroup.jsp <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages> */
%>
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ <messages>Web Service Request Complete</messages>
<sessionId>9cad6c76734e329c298e7b15c57a19db</sessionId>
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); <statusCode>SUCCESS<//statusCode> adjust host and port number
AdministrationServiceSoapBindingStub adminService </return>
</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
Expand |
---|
|
Code Block |
---|
|
以下は、こちらの呼び出しの基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
Code Block |
---|
|
|
= (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au
");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("LOGOUTUSER");ログインセッションIDを渡します。
Code Block |
---|
|
rsr.setLoginSessionId(token); |
ユーザーが複数のTomcatセッションに同時にログインしている場合は、パラメーターを設定することで、どのセッションを終了するのかを指定することができます。例:
Code Block |
---|
|
String[] _sessionId = new String[]{sessionId};"); //
logprovide
outyour
byYellowfin
Tomcatweb
sessionservices
Idadmin
(cookiesaccount
JSESSIONID)
rsr.
setParameters(_sessionId);終了のリクエストごとに、ひとつのセッションを提供します。TomcatセッションIDはオプションです。こちらを省略する場合、Yellowfinはすべてのユーザーのセッションを終了します。
リクエストの構成が完了したら、呼び出しを実行します。
Code Block |
---|
|
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
完成例
以下は、LOGOUTUSER関数の完成例です。スクリプトは、以下の手順を実行するために設計されています。
- LoginSessionIdを取得するLOGINUSERサービスの呼び出し。
- ログインリンクの構成。指定したユーザーのYellowfinセッションを初期化するために、まずはこちらのリンクをクリックしなくてはいけません。(今回の例では、john.smith@yellowfin.com.auをログインユーザーに使用します。指定するユーザーは、既にYellowfinインスタンスに存在していなくてはいけません。または、userIdを変更することもできます。)
- ログアウトするためのリンクを構成。セッションを開始したら、こちらをクリックしなくてはいけません。
こちらのスクリプトを使用するには、以下の手順に従います。
- コードをコピーして、「logoutuser.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、ログイン/ログアウトするユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/logoutuser.jsp」を実行します。
<%setPassword("test"); /*/ set the password of the above account
rsr.setOrgId(1);
logoutuser.jsprsr.setFunction("EXCLUDEUSERFROMGROUP");
//Specify the client org (if omitted, the default (primary) org */
%>
<%@ 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", falsegroups will be searched):
rsr.setOrgRef("org1");
//Specify users to exclude:
AdministrationPerson[] ap = new AdministrationPerson[1];
ap[0] = new AdministrationPerson();
ap[0].setUserId("john.smith@yellowfin.com.au"); // must be an existing Yellowfin user
rsr.setPerson(ap);
//Specify which group to exclude from:
AdministrationGroup group = new AdministrationGroup();
group.setGroupName("Administrators"); // adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest rsr = new AdministrationServiceRequest();
String token = request.getParameter("token must be an existing user group
rsr.setGroup(group);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success");
} else {
out.write("Failure");
if out.write(token" == null) {
//login the admin user:
rsr.setLoginId("admin@yellowfin.com.au"); // provide your Yellowfin web services admin account
rsr.setPassword("test"); // change to the password of the above account
rsr.setOrgId(1);
rsr.setFunction("LOGINUSER");Code: " + rs.getErrorCode());
}
%> |
Expand |
---|
|
こちらの関数は、指定したYellowfinユーザーを、指定したユーザーグループから削除します。こちらを実行することで、対象のユーザーはグループメンバーの一覧に表示されなくなります。 こちらのリクエストは、ユーザーを指定するAdministrationPersonオブジェクト、ユーザーグループを定義するAdministrationGroupオブジェクトを要求します。
リクエストパラメーター以下のパラメーターは、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「DELUSERFROMGROUP」に設定します。 | Person | AdministrationPerson | グループから削除されるユーザーの詳細を含むオブジェクトです。以下の表を参照してください。 | Group | AdministrationGroup | ユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | OrgRef | String | 指定したクライアント組織内のグループを検索する場合は、クライアント組織IDを含めます。こちらを指定しない場合は、デフォルト組織内のグループが検索されます。 |
以下は、こちらの関数のAdministrationPersonオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationPerson要素 | データ型 | 説明 | UserId | String | グループから削除する既存のYellowfinユーザーです。これは、ログイン方法に応じて、ユーザーID、または電子メールアドレスになります |
以下は、こちらの関数のAdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationGroup要素 | データ型 | 説明 | GroupName | String | ユーザーを削除するグループの名前です。 |
以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
<soapenv:Header/>
<soapenv:Body>
<web:remoteAdministrationCall>
AdministrationPerson ap =<arg0>
new AdministrationPerson(); String userId = "john.smith@yellowfin<loginId>admin@yellowfin.com.au";au</loginId>
ap.setUserId(userId); ap.setPassword("test");<password>test</password>
rsr.setPerson(ap); <orgId>1</orgId>
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); <function>DELUSERFROMGROUP</function>
if ("SUCCESS".equals(rs.getStatusCode()) ) { <person>
String token_ = rs.getLoginSessionId(); out.write("Login by opening the link in a new subtab prior to Logout. The tomcat session must be initialized...");<userId>binish.sheikh@yellowfin.com.au</userId>
</person>
<group>
out.write("<BR>Login: <A href='http://localhost:8080/logon.i4?LoginWebserviceId=" + token_ + "'>");
<groupName>Administrators</groupName>
out.write("http://localhost:8080/logon.i4?LoginWebserviceId=" + token_ + "</a><br>");</group>
out.write("<BR>Logout: <A href='http://localhost:8080/test.jsp?token=" + token_ + "&userId=" + userId + "'>");
</arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
out.write(</soapenv:Envelope> |
応答のパラメーター返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <S:Envelope xmlns:S="http://localhost:8080/test.jsp?token=" + token_ + "&userId=" + userId + "</a><br>");schemas.xmlsoap.org/soap/envelope/">
<S:Body>
} else { out.write("Failure");
out.write(" Code: " + rs.getErrorCode() );<ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
return;<return>
} } else { <errorCode>0<//logouterrorCode>
the user: out.write("Trying to logout " +<messages>Successfully tokenAuthenticated + " session...<br>");
rsr = new AdministrationServiceRequest();User: admin@yellowfin.com.au</messages>
rsr.setLoginId("admin@yellowfin.com.au"); <messages>Web Service Request Complete</messages>
// provide your Yellowfin web services admin account <sessionId>ed4f6504e415411875b2c359b9384cf9</sessionId>
rsr.setPassword("test"); <statusCode>SUCCESS</statusCode>
</return>
<//ns2:remoteAdministrationCallResponse>
set the password of the above account
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| こちらの関数の基礎的なリクエストから開始します。
Code Block |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr. |
setOrgId(1setLoginId("admin@yellowfin.com.au");
|
setFunctionLOGOUTUSER setLoginSessionIdtoken);
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Logout: Success}else{must be an existing Yellowfin user
|
outwrite"Failure" out.write("Code: " + rs.getErrorCode() );AdministrationGroup();
group.setGroupName("Administrators"); |
}}
%> |
|
Expand |
---|
|
こちらのサービスは、指定したユーザーをログアウトすることで、LOGOUTUSER関数と類似していますが、こちらは、ユーザーを識別するためにログインセッションIDではなく、ユーザーID(例:ログインIDの方法に応じて、電子メールアドレス、または他のタイプのIDになります)、またはユーザーのIP ID(YellowfinデータベースのPersonテーブルのIpIdフィールドの値)のいずれかを要求します。 こちらの呼び出しは、ユーザーID、またはIpIdの提供に使用されるAdministrationPersonオブジェクトを使用します。 リクエストの要素以下の要素は、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | Yellowfin Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「LOGOUTBYUSERID」に設定します。 | Person | AdninistrationPerson | ログアウトするユーザーの詳細を含むオブジェクトです。注意:以下の表を参照してください。 |
AdministrationPersonオブジェクトに、以下のいずれかを設定します。 AdministrationPerson要素 | データ型 | 説明 | UserId | String | Yellowfinのセッションを終了するユーザーを識別するためのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 | IpId | String | セッションを終了するユーザーのIp IDです。 |
リクエストの例以下は、関数に渡されるリクエストを示すXML SOAPの例です。 Code Block |
---|
| <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/">
<soapenv:Header/>
<soapenv:Body>
<web:remoteAdministrationCall>
|
完成例以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_deluserfromgroup.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、削除するユーザー、グループ名を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_deluserfromgroup.jsp」を実行します。
Code Block |
---|
| <%
/* <arg0> ws_ <loginId>admin@yellowfin.com.au</loginId>deluserfromgroup.jsp <password>test</password> <orgId>1</orgId>
<function>LOGOUTBYUSERID</function>
<person>
*/
%>
<%@ 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); <userId>admin@yellowfin.com.au</userId>
// adjust host and port number
AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService();
AdministrationServiceRequest <password>test</password>rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au"); </person> </arg0>
</web:remoteAdministrationCall>
</soapenv:Body>
</soapenv:Envelope> |
応答の要素返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービスの呼び出しのステータスです。値の選択肢は、以下の通りです。 |
応答の例以下は、上記のSOAPの呼び出しの応答です。 Code Block |
---|
| <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>// provide your Yellowfin web services admin account
rsr.setPassword("test"); <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
<return>
// set the password of the above account
rsr.setOrgId(1);
rsr.setFunction("DELUSERFROMGROUP");
//Specify the client org (if omitted, the default (primary) org groups will be searched):
rsr.setOrgRef("org1");
<errorCode>0<//errorCode>Specify a user to remove from a group:
AdministrationPerson ap <messages>Successfully= Authenticated User: admin@yellowfin.com.au</messages>new AdministrationPerson();
ap.setUserId("john.smith@yellowfin.com.au"); // must be an <messages>Webexisting ServiceYellowfin Requestuse
Complete</messages>
rsr.setPerson(ap);
//Specify which group to remove user <sessionId>f8a04d7c9530ff18f65f95048e6a4500</sessionId>from:
AdministrationGroup group = new AdministrationGroup();
group.setGroupName("Administrators"); <statusCode>SUCCESS</statusCode> <//return> must be an existing user group
</ns2:remoteAdministrationCallResponse>
rsr.setGroup(group);
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| Code Block |
---|
| 以下は、こちらの呼び出しの基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
Code Block |
---|
| | AdministrationServiceRequest rsr = new AdministrationServiceRequest(
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
rsr.setLoginId
if (" admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("LOGOUTBYUSERID");ユーザーID、またはIpIdを渡すことで、ログアウトをするユーザーを識別します。 Code Block |
---|
| AdministrationPerson ap = new AdministrationPerson();
ap.setUserId(userIdSUCCESS".equals(rs.getStatusCode()) ) {
out.write("Success");
} else {
out.write("Failure");
out.write(" Code: " + rsrrs. setPersongetErrorCode( ap)); ユーザーが複数のTomcatセッションに同時にログインしている場合は、パラメーターを設定することで、どのセッションを終了するのかを指定することができます。例: Code Block |
---|
| String[] _sessionId = new String[]{sessionId}; // log out by Tomcat session Id (cookies JSESSIONID)
rsr.setParameters(_sessionId); |
終了のリクエストごとに、ひとつのセッションを提供します。TomcatセッションIDはオプションです。こちらを省略する場合、Yellowfinはすべてのユーザーのセッションを終了します。 リクエストの構成が完了したら、呼び出しを実行します。 Code Block |
---|
| AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
完成例以下は、こちらの関数の完成例です。スクリプトは、以下の手順を実行するために設計されています。 - ログインリンクの構成。指定したユーザーのYellowfinセッションを初期化するために、まずはこちらのリンクをクリックしなくてはいけません。(今回の例では、john.smith@yellowfin.com.auをログインユーザーに使用します。指定するユーザーは、既にYellowfinインスタンスに存在していなくてはいけません。または、userIdを変更することもできます。)
- ログアウトするためのリンクを構成。セッションが設定されたら、こちらをクリックしなくてはいけません。
こちらのスクリプトを使用するには、以下の手順に従います。 - コードをコピーして、「test.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、ログイン/ログアウトするユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/test.jsp」を実行します。
|
Expand |
---|
title | ASSIGNDEFAULTDASHBOARD |
---|
|
こちらの関数は、特定のダッシュボードを指定したユーザーグループのデフォルトダッシュボードとして設定するために使用します。ダッシュボードを指定するためにContentResourceオブジェクト、ユーザーグループを識別するためにAdministrationGroupオブジェクトを使用します。
リクエストパラメーター以下のパラメーターは、こちらのリクエストとともに渡されます。 リクエスト要素 | データ型 | 説明 | LoginId | String | ログインをして、この関数を実行する、Webサービス管理者ユーザーのIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 | Password | String | 上記アカウントのパスワードです。 | OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 | Function | String | Webサービス関数です。こちらは、「ASSIGNDEFAULTDASHBOARD」に設定します。 | Group | AdministrationGroup | ユーザーグループの詳細を含むオブジェクトです。以下の表を参照してください。 | ContentResource | ContentResource[] | グループのデフォルトに設定するダッシュボードの詳細を含むオブジェクト配列です。以下の表を参照してください。 |
以下は、こちらの関数のAdministrationGroupオブジェクトに設定しなくてはいけない主要なパラメーターです。AdministrationGroup要素 | データ型 | 説明 | GroupName | String | デフォルトダッシュボードを設定するグループの名前です。 | GroupId | Integer | ユーザーグループに一意のIDです。 |
以下は、こちらの関数のContentResourceオブジェクトに設定しなくてはいけない主要なパラメーターです。ContentResource要素 | データ型 | 説明 | ResourceId | Integer | ダッシュボードのIDです。 | ResourceType | String | 固定値「GROUP」に設定しなくてはいけません。この値が正しく設定されていない要素は無視されます。 |
リクエストの例以下のSOAPの例は、こちらの呼び出しに渡すことのできるパラメーターを表示しています。 Code Block |
---|
| <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>
test.jsp<loginId>admin@yellowfin.com.au</loginId>
<password>test</password>
*<orgId>1</
%>
<%@ 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);orgId>
<function>ASSIGNDEFAULTDASHBOARD</function>
<group>
<groupName>Administrators<//groupName>
adjust host and port number AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService(); AdministrationServiceRequest rsr = new AdministrationServiceRequest();<groupId>11950</groupId>
String userId = request.getParameter("userId"); if (userId == null) {</group>
//login the admin user:<contentResources>
rsr.setLoginId("admin@yellowfin.com.au"); <resourceId>61251<//resourceId>
provide your Yellowfin web services admin account rsr.setPassword("test"); <ResourceType>GROUP</ResourceType>
</contentResources>
<//arg0>
set the password of the above account</web:remoteAdministrationCall>
rsr.setOrgId(1);
rsr.setFunction("LOGINUSER");
</soapenv:Body>
</soapenv:Envelope> |
応答のパラメーター返される応答には、これらのパラメーターが含まれます。 応答要素 | データ型 | 説明 | StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。 |
応答の例サービスは、今回のSOAPの例に基づき、以下の応答を返します。 Code Block |
---|
| <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
AdministrationPerson ap = new AdministrationPerson();
userId = "john.smith@yellowfin.com.au";<ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/">
ap.setUserId(userId);<return>
ap.setPassword("test"); <errorCode>0</errorCode>
rsr.setPerson(ap); AdministrationServiceResponse<messages>Successfully rsAuthenticated = adminService.remoteAdministrationCall(rsr);User: admin@yellowfin.com.au</messages>
if ("SUCCESS".equals(rs.getStatusCode()) ) { <messages>Web Service Request Complete</messages>
String token_ = rs.getLoginSessionId(); <sessionId>7b5510bf9919823f6067747b5d305984</sessionId>
out.write("Login by opening the link in a new subtab prior to Logout. The tomcat session must be initialized...");
<statusCode>SUCCESS</statusCode>
</return>
out.write("<BR>Login: <A href='http://localhost:8080/logon.i4?LoginWebserviceId=" + token_ + "'>");
out.write("http://localhost:8080/logon.i4?LoginWebserviceId=" + token_ + "</a><br>");
out.write("<BR>Logout: <A href='http://localhost:8080/test.jsp?token=" + token_ + "&userId=" + userId + "'>");
out.write("http://localhost:8080/test.jsp?token=" + token_ + "&userId=" + userId + "</a><br>");</ns2:remoteAdministrationCallResponse>
</S:Body>
</S:Envelope> |
手順Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。 Expand |
---|
| こちらの関数の基礎的なリクエストから開始します。
Code Block |
---|
| AdministrationServiceRequest rsr = new AdministrationServiceRequest();
rsr.setLoginId("admin@yellowfin.com.au");
rsr.setPassword("test");
rsr.setOrgId(1);
rsr.setFunction("ASSIGNDEFAULTDASHBOARD"); |
AdministrationGroupオブジェクトを使用して、グループを指定します。
Code Block |
---|
| AdministrationGroup administrationGroup = new AdministrationGroup();
administrationGroup.setGroupName("Administrators");
administrationGroup.setGroupId(11950); |
ContentResourceオブジェクトを使用して、ダッシュボードを指定します。
Code Block |
---|
| ContentResource dashboardContentResource = new ContentResource();
dashboardContentResource.setResourceId(61195);
dashboardContentResource.setResourceType("GROUP"); |
こちらのオブジェクトをリクエストに設定します。
Code Block |
---|
| rsr.setContentResources(new ContentResource[] { dashboardContentResource }); |
リクエストの構成が完了したら、呼び出しを実行します。
Code Block |
---|
| AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); |
管理Webサービスを初期化します。実行方法の詳細は、こちらを参照してください。
|
完成例以下は、こちらの関数の完成例です。こちらを使用するには、以下の手順に従います。 - コードをコピーして、「ws_assigndefaultdashboard.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じて、ホスト、ポート番号、管理ユーザー、削除するユーザー、グループ名を調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_assigndefaultdashboard.jsp」を実行します。
Code Block |
---|
| <%
/* }else { ws_assigndefaultdashboard.jsp out.write("Failure"); out.write(" Code: "*/
+ rs.getErrorCode() );
return;
}
} else {
//logout the user:
out.write("Trying to logout " + userId + " session...<br>");
rsr = new AdministrationServiceRequest%>
<%@ 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("admin@yellowfin.com.au");
// provide your Yellowfin web services admin account
rsr.setPassword("test");
rsr.setOrgId(new Integer(1));
rsr.setFunction("ASSIGNDEFAULTDASHBOARD");
// changeThis tois the passwordgroup
ofAdministrationGroup theadministrationGroup above= accountnew AdministrationGroup();
rsr.setOrgId(1administrationGroup.setGroupName("Administrators");
administrationGroup.setGroupId(11950);
rsr.setFunctionsetGroup("LOGOUTBYUSERID"administrationGroup);
// This is the Dashboard
AdministrationPersonContentResource apdashboardContentResource = new AdministrationPersonContentResource();
ap.setUserId(userIddashboardContentResource.setResourceId(61195);
dashboardContentResource.setResourceType("GROUP");
rsr.setContentResources(new ContentResource[] { dashboardContentResource rsr.setPerson(ap});
AdministrationServiceResponse
rs = adminServicerssbs.remoteAdministrationCall(rsr);
if ("SUCCESS".equals(rs.getStatusCode()) ) {
out.write("Logout: Success");
} else {
out.write("Failure");
out.write(" Code: " + rs.getErrorCodetoString() );
}
}
%> |
|
...