Index: src/main/java/de/mpiwg/itgroup/annotations/restlet/annotations_ui/GroupMembersResource.java
===================================================================
--- src/main/java/de/mpiwg/itgroup/annotations/restlet/annotations_ui/GroupMembersResource.java	(revision 23)
+++ src/main/java/de/mpiwg/itgroup/annotations/restlet/annotations_ui/GroupMembersResource.java	(revision 24)
@@ -6,5 +6,4 @@
 import java.util.List;
 
-import org.apache.log4j.Logger;
 import org.restlet.data.Form;
 import org.restlet.data.MediaType;
@@ -15,11 +14,8 @@
 import org.restlet.resource.Get;
 import org.restlet.resource.Post;
-import org.restlet.resource.ServerResource;
 
 import de.mpiwg.itgroup.annotations.Actor;
-import de.mpiwg.itgroup.annotations.Group;
 import de.mpiwg.itgroup.annotations.Person;
-import de.mpiwg.itgroup.annotations.neo4j.AnnotationStore;
-import de.mpiwg.itgroup.annotations.restlet.BaseRestlet;
+import de.mpiwg.itgroup.annotations.neo4j.AnnotationStore.NodeTypes;
 
 /**
@@ -29,9 +25,5 @@
  * 
  */
-public class GroupMembersResource extends ServerResource {
-
-    public static Logger logger = Logger.getLogger(GroupMembersResource.class);
-
-    private AnnotationStore store;
+public class GroupMembersResource extends GroupResource {
 
     /**
@@ -44,7 +36,5 @@
     public Representation doGetHTML(Representation entity) {
         // id from URI /annotations/groups/{id}/members
-        String id = (String) getRequest().getAttributes().get("id");
-        logger.debug("group-id=" + id);
-        if (id == null || id.isEmpty()) {
+        if (requestId == null || requestId.isEmpty()) {
             // invalid id
             setStatus(Status.CLIENT_ERROR_BAD_REQUEST);
@@ -52,9 +42,7 @@
         }
         String result = null;
-        store = getAnnotationStore();
-        Reference groupsUrl = this.getReference().getParentRef();
-        result = "<html><body>\n<h1>Members of group</h1>\n";
-        Group group = new Group(id);
-        group = (Group) store.getActor(group);
+        Reference thisUrl = this.getReference();
+        Reference groupsUrl = thisUrl.getParentRef();
+        result = "<html><body>\n<h1>Group members</h1>\n";
         result += String.format("<p>Group: %s <a href=\"%s\">(%s)</a></p>\n", group.getName(), groupsUrl, group.getId());
         result += "<p>Members:</p>\n";
@@ -62,10 +50,13 @@
         List<Person> members = store.getMembersOfGroup(group);
         for (Person p : members) {
-            result += String.format("<tr><td>%s</td><td>(%s)</td></tr>\n", p.getName(), p.getIdString());
+            result += String.format("<tr><td>%s</td><td>(%s)</td>", p.getName(), p.getIdString());
+            //result += String.format("<td></td></tr>\n", p.getName(), p.getIdString());
         }
         result += "</table>\n";
-        result += "<form method=\"post\" action=\"\">\n";
-        result += "<p>Add new member: <select name=\"new_member\">\n";
-        result += String.format("<option value=\"%s\">%s</option>\n", "casties", "casties");
+        result += String.format("<form method=\"post\" action=\"%s\">\n", thisUrl);
+        result += "<p>Add new member: <select name=\"add_member\">\n";
+        for (Actor p : store.getActors("uri", "*", NodeTypes.PERSON)) {
+            result += String.format("<option value=\"%s\">%s</option>\n", p.getIdString(), p.getName());
+        }
         result += "</select>\n";
         result += "<input type=\"submit\"/>\n";
@@ -77,5 +68,5 @@
 
     /**
-     * POST creates a new Group.
+     * POST adds or deletes members of the Group.
      * 
      * @return
@@ -83,33 +74,23 @@
     @Post
     public Representation doPost(Representation entity) {
-        logger.debug("AnnotationsUiGroup doPost!");
+        logger.debug("GroupMembersResource doPost!");
         // TODO: do authentication
         Form form = new Form(entity);
-        String id = form.getFirstValue("id");
-        String name = form.getFirstValue("name");
-        if (id == null || id.isEmpty()) {
-            // invalid id
+        String addMemberId = form.getFirstValue("add_member");
+        String delMemberId = form.getFirstValue("del_member");
+        if (group == null || ((addMemberId == null || addMemberId.isEmpty()) 
+                && (delMemberId == null || delMemberId.isEmpty()))) {
+            // no id
             setStatus(Status.CLIENT_ERROR_BAD_REQUEST);
             return null;
         }
-        String gid = null;
-        Group newGroup = new Group(gid, null, name);
-        store = getAnnotationStore();
-        Actor storedGroup = store.storeActor(newGroup);
-        gid = storedGroup.getId();
+        
         // return 303: see other
         setStatus(Status.REDIRECTION_SEE_OTHER);
-        // go GET URL for this group
-        Reference groupUrl = this.getReference();
-        groupUrl.addSegment(gid);
-        this.getResponse().setLocationRef(groupUrl);
+        // go get same URL
+        Reference thisUrl = this.getReference();
+        this.getResponse().setLocationRef(thisUrl);
         return null;
     }
 
-    protected AnnotationStore getAnnotationStore() {
-        if (store == null) {
-            store = ((BaseRestlet) getApplication()).getAnnotationStore();
-        }
-        return store;
-    }
 }
