Uploaded image for project: 'Kuali Rice Development'
  1. Kuali Rice Development
  2. KULRICE-7666

Implement default existence checks for Maintenance document and support general data objects

    Details

    • Type: Task
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.4
    • Security Level: Public (Public: Anyone can view)
    • Labels:
      None
    • Rice Module:
      KRAD
    • KRAD Feature Area:
      Maintenance
    • Sprint:
      2.4.0-m4 KRAD Sprint 2
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required
    • Include in Release Notes?:
      Yes

      Description

      Currently default existence checks are not being ran for KRAD maintenance documents. This is due to the restriction that the object be a business object. We need to allow for general data object support and enable in KRAD

      • Review MaintenanceDocumentRuleBase:processAddCollectionLine

        Attachments

          Issue Links

            Activity

            jkneal Jerry Neal (Inactive) created issue -
            jkneal Jerry Neal (Inactive) made changes -
            Field Original Value New Value
            Link This issue cloned from KULRICE-7208 [ KULRICE-7208 ]
            jkneal Jerry Neal (Inactive) made changes -
            KRAD Feature Area [Maintenance]
            Description Currently default existence checks are not being ran for KRAD maintenance documents. This is due to the restriction that the object be a business object. We need to allow for general data object support and enable in KRAD
            Priority Major [ 3 ] Critical [ 2 ]
            jcoltrin Jessica Coltrin (Inactive) made changes -
            Priority Critical [ 2 ] Major [ 3 ]
            jkneal Jerry Neal (Inactive) made changes -
            Component/s KNS Equivalency [ 13684 ]
            jcoltrin Jessica Coltrin (Inactive) made changes -
            Fix Version/s 2.2.1 [ 16733 ]
            Fix Version/s 2.2 [ 16411 ]
            Fix Version/s 2.2-backlog [ 16475 ]
            masargen Matt Sargent made changes -
            Link This issue relates to KRRM-144 [ KRRM-144 ]
            jcoltrin Jessica Coltrin (Inactive) made changes -
            Fix Version/s 2.3-backlog [ 16596 ]
            Fix Version/s 2.2.1 [ 16733 ]
            cniesen Claus Niesen made changes -
            Rice Lead cniesen
            masargen Matt Sargent made changes -
            Component/s Roadmap [ 13903 ]
            cniesen Claus Niesen made changes -
            Fix Version/s 2.3 [ 16595 ]
            Fix Version/s 2.3.0-m2 [ 16757 ]
            Fix Version/s 2.3-backlog [ 16596 ]
            gptrude Grant Trudel (Inactive) made changes -
            Include in Release Notes? Yes [ 14658 ]
            cniesen Claus Niesen made changes -
            Fix Version/s 2.4.0-m2 [ 17036 ]
            Fix Version/s 2.4 [ 16913 ]
            Fix Version/s 2.3 [ 16595 ]
            Fix Version/s 2.3.0-m2 [ 16757 ]
            cniesen Claus Niesen made changes -
            Epic Link KULRICE-9440 [ 114709 ]
            spatterson Shem Patterson (Inactive) made changes -
            Workflow custom [ 149114 ] Copy of custom for rice [ 207454 ]
            spatterson Shem Patterson (Inactive) made changes -
            Workflow Copy of custom for rice [ 207454 ] custom [ 217202 ]
            spatterson Shem Patterson (Inactive) made changes -
            Workflow custom [ 217202 ] Rice Workflow [ 226950 ]
            jcoltrin Jessica Coltrin (Inactive) made changes -
            Fix Version/s 2.4.0-m2 [ 17036 ]
            eghm-kuali-m Erik Meade made changes -
            Link This issue is relied upon by KULRICE-11488 [ KULRICE-11488 ]
            eghm-kuali-m Erik Meade made changes -
            Comment [ {code}


            Caused by: java.lang.ClassCastException: edu.sampleu.travel.dataobject.TravelerDetail cannot be cast to org.kuali.rice.krad.bo.BusinessObject
            at org.kuali.rice.krad.rules.MaintenanceDocumentRuleBase.dataDictionaryValidate(MaintenanceDocumentRuleBase.java:672)
            at org.kuali.rice.krad.rules.MaintenanceDocumentRuleBase.processGlobalSaveDocumentBusinessRules(MaintenanceDocumentRuleBase.java:857)
            at org.kuali.rice.krad.rules.MaintenanceDocumentRuleBase.processRouteDocument(MaintenanceDocumentRuleBase.java:173)
            at org.kuali.rice.krad.rules.rule.event.RouteDocumentEvent.invokeRuleMethod(RouteDocumentEvent.java:62)
            at org.kuali.rice.krad.service.impl.KualiRuleServiceImpl.applyRules(KualiRuleServiceImpl.java:85)
            at org.kuali.rice.krad.maintenance.MaintenanceDocumentBase.validateBusinessRules(MaintenanceDocumentBase.java:872)
            at org.kuali.rice.krad.service.impl.DocumentServiceImpl.validateAndPersistDocument(DocumentServiceImpl.java:842)
            at org.kuali.rice.krad.service.impl.DocumentServiceImpl.routeDocument(DocumentServiceImpl.java:189)
            at org.kuali.rice.krad.web.controller.DocumentControllerBase.performWorkflowAction(DocumentControllerBase.java:400)
            ... 75 more

            {code} ]
            cniesen Claus Niesen made changes -
            Sprint 2.4.0-m4 KRAD Sprint 2 [ 171 ]
            cniesen Claus Niesen made changes -
            Priority Major [ 3 ] Blocker [ 1 ]
            gilesp Peter Giles (Inactive) made changes -
            Original Estimate 3 days [ 86400 ]
            gilesp Peter Giles (Inactive) made changes -
            Remaining Estimate 3 days [ 86400 ]
            kbtaylor Kristina Taylor (Inactive) made changes -
            Link This issue relies on KULRICE-10655 [ KULRICE-10655 ]
            Hide
            kbtaylor Kristina Taylor (Inactive) added a comment -

            I think the hook that I added in MaintenanceDocumentRuleBase.processAddCollectionLine may also be an additional place where this is needed. If, however, the checks are working for both the base maintenance document and all of its collections, then please remove the commented hook.

            Show
            kbtaylor Kristina Taylor (Inactive) added a comment - I think the hook that I added in MaintenanceDocumentRuleBase.processAddCollectionLine may also be an additional place where this is needed. If, however, the checks are working for both the base maintenance document and all of its collections, then please remove the commented hook.
            Hide
            kbtaylor Kristina Taylor (Inactive) added a comment - - edited

            Does this mean that methods in DictionaryValidationService such as validateDefaultExistenceChecks(BusinessObject bo) should change to validateDefaultExistenceChecks(Object bo) or do the old methods need to be deprecated and new ones created?

            Show
            kbtaylor Kristina Taylor (Inactive) added a comment - - edited Does this mean that methods in DictionaryValidationService such as validateDefaultExistenceChecks(BusinessObject bo) should change to validateDefaultExistenceChecks(Object bo) or do the old methods need to be deprecated and new ones created?
            mztaylor Martin Taylor (Inactive) made changes -
            Assignee Martin Taylor [ mztaylor ]
            mztaylor Martin Taylor (Inactive) made changes -
            Description Currently default existence checks are not being ran for KRAD maintenance documents. This is due to the restriction that the object be a business object. We need to allow for general data object support and enable in KRAD Currently default existence checks are not being ran for KRAD maintenance documents. This is due to the restriction that the object be a business object. We need to allow for general data object support and enable in KRAD

            - Review MaintenanceDocumentRuleBase:processAddCollectionLine
            Hide
            mztaylor Martin Taylor (Inactive) added a comment -

            Ran through the DictionaryValidationService(Impl) and reset all method signatures from BusinessObject to Object to allow for dataObjects. When running tests found several needed to go through the KradLegacyDataAdapterImpl for testing reference definitions for collections and references. The methods (getReferenceIfExists, allForeignKeyValuesPopulatedForReference) being used were not implemented and produced exceptions. Began process of implementing methods and adding tests for business object and data objects.

            Show
            mztaylor Martin Taylor (Inactive) added a comment - Ran through the DictionaryValidationService(Impl) and reset all method signatures from BusinessObject to Object to allow for dataObjects. When running tests found several needed to go through the KradLegacyDataAdapterImpl for testing reference definitions for collections and references. The methods (getReferenceIfExists, allForeignKeyValuesPopulatedForReference) being used were not implemented and produced exceptions. Began process of implementing methods and adding tests for business object and data objects.
            mztaylor Martin Taylor (Inactive) logged work - 16/Jan/14 12:59 PM
            • Time Spent:
              1 day
               
              <No comment>
            mztaylor Martin Taylor (Inactive) made changes -
            Remaining Estimate 3 days [ 86400 ] 2 days [ 57600 ]
            Time Spent 1 day [ 28800 ]
            Worklog Id 91984 [ 91984 ]
            mztaylor Martin Taylor (Inactive) made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            Hide
            mztaylor Martin Taylor (Inactive) added a comment -

            Patch update KRADDataAdapterImpl for reference and foreign key checks, replaces BusinessObject reference with Object in DictionaryValidationService and LegacyDataAdapter and their implementations

            Show
            mztaylor Martin Taylor (Inactive) added a comment - Patch update KRADDataAdapterImpl for reference and foreign key checks, replaces BusinessObject reference with Object in DictionaryValidationService and LegacyDataAdapter and their implementations
            mztaylor Martin Taylor (Inactive) made changes -
            Attachment KULRICE-7666_1.patch [ 77156 ]
            cpedersen Corey Pedersen (Inactive) made changes -
            Link This issue fixes KULRICE-10492 [ KULRICE-10492 ]
            mztaylor Martin Taylor (Inactive) made changes -
            Status In Progress [ 3 ] Resolved [ 5 ]
            Resolution Fixed [ 1 ]
            jcoltrin Jessica Coltrin (Inactive) made changes -
            Status Resolved [ 5 ] Closed [ 6 ]

              People

              • Assignee:
                mztaylor Martin Taylor (Inactive)
                Reporter:
                jkneal Jerry Neal (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - 3 days
                  3d
                  Remaining:
                  Time Spent - 1 day Remaining Estimate - 2 days
                  2d
                  Logged:
                  Time Spent - 1 day Remaining Estimate - 2 days
                  1d