JAVA:如何在LDAP中向组添加多个成员

JAVA:如何在LDAP中向组添加多个成员,java,ldap,Java,Ldap,我正在尝试创建一个组&向该组添加一些用户。我可以添加单个成员 当我尝试添加多个成员时,结果与我预期的不一样 Java代码: 您正在使用相同的属性名称和循环中的单个值创建新的BasicAttribute。 您应该使用memberAtt.addmembers.geti向memberAtt基本属性添加值。非常感谢@Ludovic poitou。您救了我一天: public static DirContext createGroup(String groupName,ArrayList<Strin

我正在尝试创建一个组&向该组添加一些用户。我可以添加单个成员

当我尝试添加多个成员时,结果与我预期的不一样

Java代码:


您正在使用相同的属性名称和循环中的单个值创建新的BasicAttribute。
您应该使用memberAtt.addmembers.geti向memberAtt基本属性添加值。

非常感谢@Ludovic poitou。您救了我一天:
public static DirContext createGroup(String groupName,ArrayList<String> members,DirContext ctx) {

    try {

    Attributes attrs = new BasicAttributes(true); 
    Attribute objclass = new BasicAttribute("objectClass");
    objclass.add("top");
    objclass.add("groupOfNames");

    Attribute groupname = new BasicAttribute("cn", groupName);

    attrs.put(objclass);
    attrs.put(groupname);

    Attribute memberAtt;

    for (int i = 0;i<members.size();i++) 
    { 
        memberAtt = new BasicAttribute("member", members.get(i));
        attrs.put(memberAtt);
    }

    ctx.createSubcontext("cn="+groupName+",ou=Groups", attrs);
    } catch (NamingException e) {
        e.printStackTrace();
    }
    return ctx;
}