Uploaded image for project: 'Grouper'
  1. Grouper
  2. GRP-1228

subject api ldap debug info

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Unresolved
    • Minor
    • 2.2.2.patch
    • None
    • subject API
    • 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>

      Attachments

        Activity

          People

            chris.hyzer@at.internet2.edu Chris Hyzer (upenn.edu)
            chris.hyzer@at.internet2.edu Chris Hyzer (upenn.edu)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: