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

DTOConverter#convertWorkflowAttributeDefinition only looks for a definition by name now

    Details

    • Type: Bug Fix Bug Fix
    • Status: Closed Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 2.1.1
    • Fix Version/s: 2.1.1
    • Component/s: Development
    • Security Level: Public (Public: Anyone can view)
    • Labels:
      None
    • Similar issues:
      KULRICE-7556DocumentSearchCriteria should support principal ids, right now it only supports specifying principal names
      KULRICE-4750Using Person Lookup with First Name or Last name only looks at the "Preffered" name instead of the default
      KULRICE-12625Attribute definitions not being correctly picked up from data dictionary for input fields
      KULRICE-3526Fix issue with Document Type XML parser where it isn't properly handling route paths that re-use a node definition
      KULRICE-7693expressions in nested bean definitions not processed
      KULRICE-3775Research how Message Resources are loaded now and clean them up
      KULRICE-7373Rename KRMS Definition classes (drop Definition) and DefinitionContract classes to Contract.
      KULRICE-6721Document search does not work properly with KNS Attribute Definitions
      KULRICE-9916Do checkbox conversion in LookupInputField only when specified through attribute definition
      KULRICE-3033Look into fixing why Rice standalone can only be packaged properly using Maven 2.0.9
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required

      Description

      In Rice 1.x, DTOConverter would attempt to lookup a workflow attribute definition first by class name and then by attribute name. In Rice 2.x, it only looks up by attribute name. This breaks attribute lookups, especially while running in remote applications.

      Example:
      Rice 1.x

      
      
              // get the rule attribute so we can get's it's message antity and not blow up if it's remote
              RuleAttribute ruleAttribute = KEWServiceLocator.getRuleAttributeService().findByClassName(definitionVO.getAttributeName());
              if (ruleAttribute == null) {
                  ruleAttribute = KEWServiceLocator.getRuleAttributeService().findByName(definitionVO.getAttributeName());
              }
              if (ruleAttribute == null) {
                  throw new WorkflowRuntimeException("Attribute " + definitionVO.getAttributeName() + " not found");
              }
      

      Rice 2.x

      ExtensionDefinition extensionDefinition = KewApiServiceLocator.getExtensionRepositoryService().getExtensionByName(definition.getAttributeName());
              if (extensionDefinition == null) {
                  throw new WorkflowRuntimeException("Extension " + definition.getAttributeName() + " not found");
              }
      

        Issue Links

          Activity

            People

            • Assignee:
              Peter Giles (Inactive)
              Reporter:
              Greg Patterson (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Structure Helper Panel