Source:
protected <T extends RassXmlObject, R extends PersistableBusinessObject> MaintenanceDocument createAndRouteMaintenanceDocumentInternal( Pair<R, R> businessObjects, String maintenanceAction, RassObjectTranslationDefinition<T, R> objectDefinition) throws WorkflowException { String annotation = configurationService.getPropertyValueAsString(RassKeyConstants.MESSAGE_RASS_DOCUMENT_ANNOTATION_ROUTE); R newBo = businessObjects.getRight(); MaintenanceDocument maintenanceDocument = maintenanceDocumentService.setupNewMaintenanceDocument( objectDefinition.getBusinessObjectClass().getName(), objectDefinition.getDocumentTypeName(), maintenanceAction); if (StringUtils.equals(KRADConstants.MAINTENANCE_EDIT_ACTION, maintenanceAction)) { maintenanceDocument.getOldMaintainableObject().setDataObject(businessObjects.getLeft()); } maintenanceDocument.getNewMaintainableObject().setDataObject(newBo); maintenanceDocument.getNewMaintainableObject().setMaintenanceAction(maintenanceAction); maintenanceDocument.getDocumentHeader().setDocumentDescription( buildDocumentDescription(newBo, maintenanceAction, objectDefinition)); try { maintenanceDocument = (MaintenanceDocument) documentService.routeDocument( maintenanceDocument, annotation, null); } catch(ValidationException ve) { LOG.error("createAndRouteMaintenanceDocumentInternal, Error routing document # " + maintenanceDocument.getDocumentNumber() + " " + ve.getMessage(), ve); String errorMessage = buildValidationErrorMessage((ValidationException) ve); LOG.error("createAndRouteMaintenanceDocumentInternal: Could not route document - " + errorMessage); throw new ValidationException(errorMessage); } return maintenanceDocument; }

Target:
protected <T extends RassXmlObject, R extends PersistableBusinessObject> MaintenanceDocument createAndRouteMaintenanceDocumentInternal( Pair<R, R> businessObjects, String maintenanceAction, RassObjectTranslationDefinition<T, R> objectDefinition) throws WorkflowException { String annotation = configurationService.getPropertyValueAsString(RassKeyConstants.MESSAGE_RASS_DOCUMENT_ANNOTATION_ROUTE); R newBo = businessObjects.getRight(); MaintenanceDocument maintenanceDocument = maintenanceDocumentService.setupNewMaintenanceDocument(objectDefinition.getBusinessObjectClass().getName(), objectDefinition.getDocumentTypeName(), maintenanceAction); if (StringUtils.equals(KRADConstants.MAINTENANCE_EDIT_ACTION, maintenanceAction)) { maintenanceDocument.getOldMaintainableObject().setDataObject(businessObjects.getLeft()); } maintenanceDocument.getNewMaintainableObject().setDataObject(newBo); maintenanceDocument.getNewMaintainableObject().setMaintenanceAction(maintenanceAction); maintenanceDocument.getDocumentHeader().setDocumentDescription(buildDocumentDescription(newBo, maintenanceAction, objectDefinition)); try { maintenanceDocument = (MaintenanceDocument) documentService.routeDocument(maintenanceDocument, annotation, null); } catch (ValidationException ve) { LOG.error("createAndRouteMaintenanceDocumentInternal, Error routing document # " + maintenanceDocument.getDocumentNumber() + " " + ve.getMessage(), ve); String errorMessage = buildValidationErrorMessage(ve); LOG.error("createAndRouteMaintenanceDocumentInternal: Could not route document - " + errorMessage); throw new ValidationException(errorMessage); } return maintenanceDocument; }