diff --git a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/rma/type/RecordFolderType.java b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/rma/type/RecordFolderType.java index 668bf2aa73..7d2aff1e47 100644 --- a/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/rma/type/RecordFolderType.java +++ b/rm-community/rm-community-repo/source/java/org/alfresco/module/org_alfresco_module_rm/model/rma/type/RecordFolderType.java @@ -215,11 +215,6 @@ public class RecordFolderType extends AbstractDisposableItem if (nodeService.exists(nodeRef)) { - // only records can be added in a record folder - if (!instanceOf(nodeRef, ContentModel.TYPE_CONTENT)) - { - throw new AlfrescoRuntimeException("Operation failed, because you can only place content into a record folder."); - } // ensure nothing is being added to a closed record folder NodeRef recordFolder = childAssocRef.getParentRef(); Boolean isClosed = (Boolean) nodeService.getProperty(recordFolder, PROP_IS_CLOSED); @@ -245,6 +240,12 @@ public class RecordFolderType extends AbstractDisposableItem { final NodeRef recordFolder = childAssocRef.getChildRef(); + // only records can be added in a record folder or hidden folders(is the case of e-mail attachments) + if (!instanceOf(recordFolder, ContentModel.TYPE_CONTENT) && !nodeService.hasAspect(recordFolder, ContentModel.ASPECT_HIDDEN)) + { + throw new AlfrescoRuntimeException("Operation failed, because you can only place content into a record folder."); + } + behaviourFilter.disableBehaviour(); try {