3 Replies Latest reply on Aug 20, 2009 8:32 AM by Ronald van Kuijk

    Using LDAP: can't assign tasks to users in group ...

    Ardavan Metghalchi Newbie

      Hi,
      I am trying to hook up LDAP with jbpm. Therefore I have my own implementation of the ExpressionSession interface.
      I also have an AssignmentHandler which extends ExpressionAssignmentHandler.

      My problem: my task using: swimlane="manager" is assigned to 'null'.

      This is how I set up my swimlanes in my processdefinition file:

      <swimlane name="client">
       <assignment class='com.brighthorizons.jbpm.identity.ldap.MyLdapAssignmentHandler'>
       <expression>user(ardi)</expression>
       </assignment>
       </swimlane>
      
       <swimlane name="manager">
       <assignment class='com.brighthorizons.jbpm.identity.ldap.MyLdapAssignmentHandler'>
       <expression>group(groupTest)</expression>
       </assignment>
       </swimlane>


      With the
      <expression>user(ardi)</expression>
      I have no issues but when I want to assign my task to the users in a group using
      <expression>group(groupTest)</expression>
      - jbpm assigns the taskInstance to null.

      I have a
      public Group getGroupByName(String groupName)
      method that searches and finds the right group (LDAP)
      then creates the group
      group = new Group(groupName, "");


      Then lists all the members of that group and adds membership
      Attribute memberAttr = groupAttrs.get("uniquemember");for (NamingEnumeration memberValues = memberAttr.getAll(); memberValues.hasMore();)
      {
       String memberValue = memberValues.next().toString();
      
       User user;
       user = getUser(memberValue);
       System.out.println("user name from group:" + user.getName());
       Membership.create(user, group);
       System.out.println("membership created between:" + user.getName() +" and " + group.getName());
      }
      

      I don't know what's wrong - I think I still don't understand the identity component of jbpm.
      please help.

      thank you
      Ardi