diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/model/RecordsManagementSearchBehaviour.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/model/RecordsManagementSearchBehaviour.java index ea6e0ef6ca..79823d13a7 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/model/RecordsManagementSearchBehaviour.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/model/RecordsManagementSearchBehaviour.java @@ -498,15 +498,16 @@ public class RecordsManagementSearchBehaviour implements RecordsManagementModel { if (nodeService.exists(nodeRef) == true) { - // Initialise the search parameteres as required + // Initialise the search parameters as required setVitalRecordDefintionDetails(nodeRef); } } public void vitalRecordDefintionAddAspect(NodeRef nodeRef, QName aspectTypeQName) { - // Only care about record folders - if (recordsManagementService.isRecordFolder(nodeRef) == true) + // Only care about record folders or record categories + if (recordsManagementService.isRecordFolder(nodeRef) == true || + recordsManagementService.isRecordCategory(nodeRef) == true) { updateVitalRecordDefinitionValues(nodeRef); } @@ -514,8 +515,9 @@ public class RecordsManagementSearchBehaviour implements RecordsManagementModel public void vitalRecordDefintionUpdateProperties(NodeRef nodeRef, Map before, Map after) { - // Only care about record folders - if (recordsManagementService.isRecordFolder(nodeRef) == true) + // Only care about record folders or record categories + if (recordsManagementService.isRecordFolder(nodeRef) == true || + recordsManagementService.isRecordCategory(nodeRef) == true) { Set props = new HashSet(1); props.add(PROP_REVIEW_PERIOD); @@ -535,14 +537,17 @@ public class RecordsManagementSearchBehaviour implements RecordsManagementModel applySearchAspect(nodeRef); setVitalRecordDefintionDetails(nodeRef); - List records = recordsManagementService.getRecords(nodeRef); - for (NodeRef record : records) - { - // Apply the search aspect - applySearchAspect(record); - - // Set the vital record definition details - setVitalRecordDefintionDetails(record); + if (recordsManagementService.isRecordFolder(nodeRef) == true) + { + List records = recordsManagementService.getRecords(nodeRef); + for (NodeRef record : records) + { + // Apply the search aspect + applySearchAspect(record); + + // Set the vital record definition details + setVitalRecordDefintionDetails(record); + } } } diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/slingshot/RMSearchGet.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/slingshot/RMSearchGet.java index a1d9ba4459..df8c40bc25 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/slingshot/RMSearchGet.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/slingshot/RMSearchGet.java @@ -282,12 +282,12 @@ public class RMSearchGet extends DeclarativeWebScript relPath.append(getName()); try { - this.browseUrl = "documentlibrary?path=" + URLEncoder.encode(relPath.toString(), "UTF-8"); + this.browseUrl = "documentlibrary?path=" + URLEncoder.encode(relPath.toString(), "UTF-8").replaceAll("\\+","%20"); } catch (UnsupportedEncodingException e) { throw new AlfrescoRuntimeException("Could not process search results.", e); - } + } } } else