エントリの変更では、指定された属性を追加、削除、置換することができます。
エントリを変更するには、以下のメソッドを使用します。
javax.naming.DirContext.modifyAttributes()
javax.naming.directory.ModificationItemクラスを使って、操作対象の属性リストを作成します。ModificationItemは、操作対象の属性と、変更操作の種類から成ります。変更操作の種類には、以下のどれか1つを指定します。
DirContext.ADD_ATTRIBUTE : 属性値の追加
DirContext.REMOVE_ATTRIBUTE : 属性値の削除
DirContext.REPLACE_ATTRIBUTE : 属性値の置換
以下の例では、3つの属性値を変更しています。
「telephoneNumber」属性値を、新しい値「123-456-7890」で置換え
「mail」属性に、値「user001@interstage.fujitsu.com」を追加
「title」属性を削除
ModificationItem[] mods = new ModificationItem[3]; Attribute mod0 = new BasicAttribute("telephoneNumber", "123-456-7890"); mods[0] = new ModificationItem(DirContext.REPLACE_ATTRIBUTE, mod0); Attribute mod1 = new BasicAttribute("mail","user001@interstage.fujitsu.com"); mods[1] = new ModificationItem(DirContext.ADD_ATTRIBUTE, mod1); Attribute mod2 = new BasicAttribute("title"); mods[2] = new ModificationItem(DirContext.REMOVE_ATTRIBUTE, mod2);
この属性リストをmodifyAttributes()メソッドに指定します。
ctx.modifyAttributes(mod_dn, mods);