Kuali Rice Development
  1. Kuali Rice Development
  2. KULRICE-12836

Role qualifiers lost on role maintenance document

    Details

    • Type: Task Task
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.4
    • Fix Version/s: 2.5
    • Component/s: Development
    • Security Level: Public (Public: Anyone can view)
    • Similar issues:
      KULRICE-8477Role Maintenance Document: Add ability to search on Role Qualifiers
      KULRICE-6565Fix qualifiers on role for Person and Role Documents
      KULRICE-4178Some role qualifiers displaying incorrectly
      KULRICE-9165Person document not displaying role qualifiers
      KULRICE-7896NullPointerException if no role qualifier added on Person document
      KULRICE-10306person document has a display issue if a role has more than 19 role qualifiers
      KULRICE-7082KIM role document not handling missing qualifiers on role members
      KULRICE-4153Inactive qualifiers cause problems on existing roles
      KULRICE-4405Adding check to role qualifiers in ResponsibilityService
      KULRICE-3989UIDocumentService.loadRoleMemberQualifiers - is there a way to load qualifiers not associated with the role type
    • Rice Module:
      KIM
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required
    • Code Review Status:
      Not Required
    • Contributing Institution:
      Indiana Univ
    • Include in Release Notes?:
      Yes

      Description

      When using the role maintenance document if you attempt to add role members with qualifiers those values are not persisted appropriately. This seems to be caused during the IdentityManagementRoleDocumetn#addMember method. That method is manually setting the ID for the KimDocumentRoleMember that is being added and JPA does not seem to cascade that value down to its children (KimDocumentRoleQualifiers in this case). When the pending qualifiers are saved to the database the role member ID is null so they are not loaded properly when the objects are refetched from the database to be persisted in the main KIM tables. I'm guessing that OJB automatically maintained the relationship in the past and there is some problem with the way these objects are mapped to JPA which is preventing this from working. It might also be an issue since the code is manually setting the role member ID so JPA assumes it will be manually cascaded to the child objects.

        Activity

        Hide
        James Bennett added a comment -

        This has been fixed by modifying the IdentityManagementRoleDocument so it updates the role member ID for each qualifier before saving the document.

        Show
        James Bennett added a comment - This has been fixed by modifying the IdentityManagementRoleDocument so it updates the role member ID for each qualifier before saving the document.

          People

          • Assignee:
            James Bennett
            Reporter:
            James Bennett
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Structure Helper Panel