modifyUserDataメソッド

説明

ユーザ情報を修正します。指定したユーザがない場合は例外が発生します。

このメソッドでは,UserDataオブジェクトの生成後,変更された属性だけが既存の属性に上書きされます。

例えば,リポジトリの既存のユーザ情報が次に示す属性を持っていたとします。

属性名full nametel
Sato Taro111-1111
222-2222

このとき,次のコードで生成したUserDataオブジェクトをこのメソッドのパラメタに指定します。

UserData data = new UserData();
data.addAttribute("tel", "111-2222");

すると,リポジトリのユーザ情報は次のように変更されます。

属性名full nametel
Sato Taro111-2222

(凡例)-:情報がないことを示します。


このメソッドを呼び出した結果,サブコンテキストの更新中に例外が発生した場合,ユーザ情報は不完全に更新された状態になっています。その場合,原因を取り除いてから再びこのメソッドを呼び出してください。

形式

public void modifyUserData(String uid,
                          UserData userData)
 throws ObjectClassError, NamingException;

パラメタ

uid:
ユーザIDを指定します。
userData:
ユーザ情報を格納したUserDataオブジェクトを指定します。

例外

com.cosminexus.admin.auth.api.repository.ldap.ObjectClassError:
LDAPディレクトリサーバにエントリを作成するために必要なオブジェクトクラスが指定されていません。
javax.naming.CommunicationException:
LDAPディレクトリサーバへの接続に失敗しました。
javax.naming.NameNotFoundException:
指定したユーザIDがありません。
その他JNDIの例外:
バインドDNの指定ミスなどです。

戻り値

なし