Details
-
Improvement
-
Resolution: Unresolved
-
Minor
-
None
-
None
Description
----Original Message----
From: Imholz, John J.
Sent: Tuesday, December 01, 2015 9:37 AM
To: Chris Hyzer; grouper-users
Subject: RE: New Install Problems with subjects
The gsh find commands work. I'm having problems with the UI "Add members" search.
Is there a config for what get's displayed?
See attached screenshot. I searched for "jones, j"
Looks like some people are listed with <source> - <identifier> - <name>
others are listed with just <department>
jji
----Original Message----
From: Chris Hyzer
Sent: Monday, November 30, 2015 1:25 PM
To: Imholz, John J.; grouper-users
Subject: RE: New Install Problems with subjects
Start up GSH. There are essentially 3 subject API calls: find by id (findById), find by identifier (findByIdentifier), search (findAll).
https://spaces.internet2.edu/pages/viewpage.action?pageId=14517859#GrouperShell(gsh)-Subjects
Did you end up getting this to work? Can you not use your old sources.xml configuration?
Thanks,
Chris
----Original Message----
From: grouper-users-request grouper-users-request On Behalf Of Imholz, John J.
Sent: Monday, November 23, 2015 1:08 PM
To: grouper-users
Subject: [grouper-users] New Install Problems with subjects
New install of 2.2.2. Having two problems when adding members to a group with the UI.
1. When entering search term in box, the list of items only displays the department attribute value.
2. When entering a term like "morris", The screen displays "The value entered is not valid." Is there a gsh way to generate this error?
The UI error log has this:
2015-11-23 10:56:59,717: [TP-Processor6] ERROR GrouperUiRestServlet.doGet(321) - - Problem calling reflection from URL: edu.internet2.middleware.grouper.grouperUi.serviceLogic.UiV2Group.addMemberFilter
edu.internet2.middleware.subject.SubjectNotUniqueException: Search is not unique:CN=900015809,ou=people,dc=clinlan,dc=local
,
Problem calling method addMemberFilter on edu.internet2.middleware.grouper.grouperUi.serviceLogic.UiV2Group
at edu.internet2.middleware.subject.provider.LdapSourceAdapter.getLdapUnique(LdapSourceAdapter.java:782)
at edu.internet2.middleware.subject.provider.LdapSourceAdapter.getSubjectByIdentifier(LdapSourceAdapter.java:420)
at edu.internet2.middleware.subject.provider.BaseSourceAdapter.getSubjectByIdOrIdentifier(BaseSourceAdapter.java:246)
at edu.internet2.middleware.grouper.subj.SourcesXmlResolver$4.callLogic(SourcesXmlResolver.java:514)
at edu.internet2.middleware.grouper.subj.SourcesXmlResolver$4.callLogic(SourcesXmlResolver.java:511)
at edu.internet2.middleware.grouper.subj.SourcesXmlResolver$LogLabelCallable.call(SourcesXmlResolver.java:169)
at edu.internet2.middleware.grouper.subj.SourcesXmlResolver.executeCallables(SourcesXmlResolver.java:230)
at edu.internet2.middleware.grouper.subj.SourcesXmlResolver.findByIdOrIdentifier(SourcesXmlResolver.java:520)
at edu.internet2.middleware.grouper.subj.CachingResolver.findByIdOrIdentifier(CachingResolver.java:377)
at edu.internet2.middleware.grouper.subj.ValidatingResolver.findByIdOrIdentifier(ValidatingResolver.java:203)
at edu.internet2.middleware.grouper.SubjectFinder.findByIdOrIdentifier(SubjectFinder.java:315)
at edu.internet2.middleware.grouper.grouperUi.serviceLogic.UiV2Group$1.lookup(UiV2Group.java:515)
at edu.internet2.middleware.grouper.grouperUi.serviceLogic.UiV2Group$1.lookup(UiV2Group.java:497)
at edu.internet2.middleware.grouper.grouperUi.beans.dojo.DojoComboLogic.logic(DojoComboLogic.java:118)
at edu.internet2.middleware.grouper.grouperUi.serviceLogic.UiV2Group.addMemberFilter(UiV2Group.java:497)
I did check the ldap and I get 1 result when searching for CN=900015809 (base: ou=people,dc=clinlan,dc=local)
Do you need some sources.xml: ( I did what I thought was minimal config to get it up and running.)
<init-param>
<param-name>SubjectID_AttributeType</param-name>
<param-value>muscPVID</param-value>
</init-param>
<init-param>
<param-name>SubjectID_formatToLowerCase</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>Name_AttributeType</param-name>
<param-value>displayName</param-value>
</init-param>
<init-param>
<param-name>Description_AttributeType</param-name>
<param-value>department</param-value>
</init-param>
/// Scope Values can be: OBJECT_SCOPE, ONELEVEL_SCOPE, SUBTREE_SCOPE
/// For filter use
<search>
<searchType>searchSubject</searchType>
<param>
<param-name>filter</param-name>
<param-value>
(& (muscPVID=%TERM%) (objectclass=person))
</param-value>
</param>
<param>
<param-name>scope</param-name>
<param-value>
SUBTREE_SCOPE
</param-value>
</param>
<param>
<param-name>base</param-name>
<param-value>
ou=people,dc=clinlan,dc=local
</param-value>
</param>
</search>
<search>
<searchType>searchSubjectByIdentifier</searchType>
<param>
<param-name>filter</param-name>
<param-value>
(& (muscAccountName=%TERM%) (objectclass=person))
</param-value>
</param>
<param>
<param-name>scope</param-name>
<param-value>
SUBTREE_SCOPE
</param-value>
</param>
<param>
<param-name>base</param-name>
<param-value>
ou=people,dc=clinlan,dc=local
</param-value>
</param>
</search>
<search>
<searchType>search</searchType>
<param>
<param-name>filter</param-name>
<param-value>
(& (|(muscAccountName=%TERM%)(displayName=%TERM%)(muscPVID=%TERM%))(objectclass=person))
</param-value>
</param>
<param>
<param-name>scope</param-name>
<param-value>
SUBTREE_SCOPE
</param-value>
</param>
<param>
<param-name>base</param-name>
<param-value>
ou=people,dc=clinlan,dc=local
</param-value>
</param>
</search>
<init-param>
<param-name>subjectVirtualAttribute_0_searchAttribute0</param-name>
<param-value>${subjectUtils.defaultIfBlank(subject.getAttributeValueOrCommaSeparated('muscAccountName'), "")},${subjectUtils.defaultIfBlank(subject.getAttributeValueOrCommaSeparated('displayName'), "")},${subjectUtils.defaultIfBlank(subject.getAttributeValueOrCommaSeparated('muscPVID'), "")}</param-value>
</init-param>
<init-param>
<param-name>sortAttribute0</param-name>
<param-value>displayName</param-value>
</init-param>
<init-param>
<param-name>searchAttribute0</param-name>
<param-value>searchAttribute0</param-value>
</init-param>
<internal-attribute>searchAttribute0</internal-attribute>
<!--
///Attributes you would like to display when doing a search
<attribute>cn</attribute>
<attribute>sn</attribute>
<attribute>uid</attribute>
<attribute>department</attribute>
<attribute>exampleEduRegId</attribute>
-->
</source>
</sources>