diff --git a/amps/ags/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml b/amps/ags/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml
index 67152cf0f6..25205b9104 100644
--- a/amps/ags/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml
+++ b/amps/ags/rm-community/rm-community-repo/config/alfresco/module/org_alfresco_module_rm/rm-public-rest-context.xml
@@ -81,6 +81,7 @@
+
diff --git a/amps/ags/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/fileplans/FilePlanRolesRelation.java b/amps/ags/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/fileplans/FilePlanRolesRelation.java
index 183234f42e..a6200e9063 100644
--- a/amps/ags/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/fileplans/FilePlanRolesRelation.java
+++ b/amps/ags/rm-community/rm-community-repo/source/java/org/alfresco/rm/rest/api/fileplans/FilePlanRolesRelation.java
@@ -30,7 +30,9 @@ import static org.alfresco.util.ParameterCheck.mandatory;
import org.springframework.beans.factory.InitializingBean;
+import org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanService;
import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel;
+import org.alfresco.rest.framework.core.exceptions.EntityNotFoundException;
import org.alfresco.rest.framework.resource.RelationshipResource;
import org.alfresco.rest.framework.resource.actions.interfaces.RelationshipResourceAction;
import org.alfresco.rest.framework.resource.parameters.CollectionWithPagingInfo;
@@ -44,6 +46,7 @@ import org.alfresco.service.cmr.repository.NodeRef;
public class FilePlanRolesRelation implements RelationshipResourceAction.Read, InitializingBean
{
private RMRoles rmRoles;
+ private FilePlanService filePlanService;
private FilePlanComponentsApiUtils apiUtils;
@Override
@@ -51,15 +54,31 @@ public class FilePlanRolesRelation implements RelationshipResourceAction.Read readAll(String filePlanId, Parameters params)
{
- NodeRef filePlanNodeRef = apiUtils.lookupAndValidateNodeType(filePlanId, RecordsManagementModel.TYPE_FILE_PLAN);
+ NodeRef filePlanNodeRef = getFilePlan(filePlanId);
+ if (filePlanNodeRef == null)
+ {
+ throw new EntityNotFoundException(filePlanId);
+ }
+
return rmRoles.getRoles(filePlanNodeRef, params);
}
+ private NodeRef getFilePlan(String filePlanId)
+ {
+ NodeRef filePlanNodeRef = apiUtils.lookupAndValidateNodeType(filePlanId, RecordsManagementModel.TYPE_FILE_PLAN);
+ if (!FilePlanComponentsApiUtils.FILE_PLAN_ALIAS.equals(filePlanId))
+ {
+ filePlanNodeRef = filePlanService.getFilePlan(filePlanNodeRef);
+ }
+ return filePlanNodeRef;
+ }
+
public void setRmRoles(RMRoles rmRoles)
{
this.rmRoles = rmRoles;
@@ -69,4 +88,9 @@ public class FilePlanRolesRelation implements RelationshipResourceAction.Read