将实体分配给组

使用 update(DataObject) 方法和 GroupMemberControl 可将一个或多个实体分配给组。

关于此任务

此示例显示如何将 SalesPerson1 和 SalesPerson2 分配给组 Managers。在此示例中,使用 Managers 的 members 属性传递 SalesPerson1 和 SalesPerson2。
注: 缺省情况下这些调用是 MODIFY_MODE_ASSIGN,即调用并不替换成员资格,而是添加成员资格。
要将 SalesPerson1 和 SalesPerson2 添加到 Managers,请将以下样本代码添加到应用程序代码,并将变量替换为要用于此请求的实际值:
DataObject root = SDOHelper.createRootDataObject();
DataObject entity = SDOHelper.createEntityDataObject(root, null, DO_GROUP);
entity.createDataObject(DO_IDENTIFIER).set(PROP_UNIQUE_NAME, 
                         "cn=Managers,cn=groups,dc=yourco,dc=com");

DataObject member1 = SDOHelper.createDataObject(WIM_NS_URI, DO_ENTITY);
member1.createDataObject(DO_IDENTIFIER).setString(PROP_UNIQUE_NAME,
          "uid=SalesPerson1,ou=CA,o=Sales,cn=users,dc=yourco,dc=com");
DataObject member2 = SDOHelper.createDataObject(WIM_NS_URI, DO_ENTITY);

member2.createDataObject(DO_IDENTIFIER).setString(PROP_UNIQUE_NAME,
          "uid=SalesPerson2,ou=CA,o=Sales,cn=users,dc=yourco,dc=com");
		
entity.getList(DO_MEMBERS).add(member1);
entity.getList(DO_MEMBERS).add(member2);
		
root = service.update(root);

输入和输出数据图样本

对于此特定示例,输入数据图为:
<?xml version="1.0" encoding="UTF-8"?>
<sdo:datagraph xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:sdo="commonj.sdo" 
               xmlns:wim="http://www.ibm.com/websphere/wim">
  <wim:Root>
    <wim:entities xsi:type="wim:Group">
      <wim:identifier uniqueName="cn=Managers,cn=groups,dc=yourco,dc=com"/>
      <wim:members>
        <wim:identifier uniqueName="uid=SalesPerson1,ou=CA,o=Sales,cn=users,dc=yourco,dc=com"/>
      </wim:members>
      <wim:members>
        <wim:identifier uniqueId="a3f9e8a1-117a-4252-840f-6d0cb079a7fb"/>
      </wim:members>
    </wim:entities>
  </wim:Root>
</sdo:datagraph>
此示例生成的输出数据图为:
<?xml version="1.0" encoding="UTF-8"?>
<sdo:datagraph xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:sdo="commonj.sdo" 
               xmlns:wim="http://www.ibm.com/websphere/wim">
  <wim:Root>
    <wim:entities xsi:type="wim:Group">
      <wim:identifier externalId="6e45af37-bc3f-4260-af27-666e1ebdbda2" 
                      externalName="cn=Managers,cn=groups,dc=yourco,dc=com"
                      repositoryId="LDAP1" 
                      uniqueId="6e45af37-bc3f-4260-af27-666e1ebdbda2" 
                      uniqueName="cn=Managers,cn=groups,dc=yourco,dc=com"/>
    </wim:entities>
  </wim:Root>
</sdo:datagraph>

对于端到端样本代码,请参阅“处理用户、组、组成员和组成员资格的样本代码”主题。



使用条款 | 反馈