Setting the correct value for CourseMember.Uniqname
To get the correct property of the Uniqname in the getCourseMembers() method, you'll need to set it to the user's internal Sakai ID, not their Eid. To do this, you'll need to inject the UserDirectoryService, look up the user by Eid and then get the id from the returned User object.
Reported by Zach Thomas
"When SiteAction builds the list of participants, it uses uniqname to check if participants are in the AuthzGroup or groups for the site.
An AuthzGroup has a map of users keyed on the Sakai internal id, not Eid.
So if Uniqname is an eid, SiteAction will display some of your users as not members of the AuthzGroup. Namely any user whose id does not happen to match his eid."