diff --git a/ReadMe.txt b/ReadMe.txt index 5b59245a47..139e966e86 100644 --- a/ReadMe.txt +++ b/ReadMe.txt @@ -20,6 +20,7 @@ Initial Setup Using Eclipse - Start Eclipse in the usual way. + Note: make sure the WAR dependancies have been exploded before opening Eclispe. - Import projects found in rm-server and rm-share directories. Deploying the RM AMPs diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/RecordsManagementAdminServiceImpl.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/RecordsManagementAdminServiceImpl.java index 3500f1d704..0b15d38b5d 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/RecordsManagementAdminServiceImpl.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/RecordsManagementAdminServiceImpl.java @@ -630,7 +630,11 @@ public class RecordsManagementAdminServiceImpl implements RecordsManagementAdmin Map result = new HashMap(); for (QName customisableType : getCustomisable()) { - result.putAll(getCustomPropertyDefinitions(customisableType)); + Map props = getCustomPropertyDefinitions(customisableType); + if (props != null) + { + result.putAll(props); + } } return result; } @@ -640,9 +644,13 @@ public class RecordsManagementAdminServiceImpl implements RecordsManagementAdmin */ public Map getCustomPropertyDefinitions(QName customisableType) { + Map propDefns = null; QName relevantAspectQName = getCustomAspect(customisableType); AspectDefinition aspectDefn = dictionaryService.getAspect(relevantAspectQName); - Map propDefns = aspectDefn.getProperties(); + if (aspectDefn != null) + { + propDefns = aspectDefn.getProperties(); + } return propDefns; } diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/forms/RecordsManagementTypeFormFilter.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/forms/RecordsManagementTypeFormFilter.java index cf298cfa3f..b586652f4a 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/forms/RecordsManagementTypeFormFilter.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/forms/RecordsManagementTypeFormFilter.java @@ -125,16 +125,19 @@ public class RecordsManagementTypeFormFilter extends RecordsManagementFormFilter ParameterCheck.mandatory("form", form); Map customProps = rmAdminService.getCustomPropertyDefinitions(customisableType); - - if (logger.isDebugEnabled() == true) + + if (customProps != null) { - logger.debug("Found " + customProps.size() + " custom properties for customisable type " + customisableType); + if (logger.isDebugEnabled() == true) + { + logger.debug("Found " + customProps.size() + " custom properties for customisable type " + customisableType); + } + + // setup field definition for each custom property + Collection properties = customProps.values(); + List fields = FieldUtils.makePropertyFields(properties, CUSTOM_RM_FIELD_GROUP, namespaceService); + form.addFields(fields); } - - // setup field definition for each custom property - Collection properties = customProps.values(); - List fields = FieldUtils.makePropertyFields(properties, CUSTOM_RM_FIELD_GROUP, namespaceService); - form.addFields(fields); } /* diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/CustomPropertyDefinitionsGet.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/CustomPropertyDefinitionsGet.java index 0a0d06ea69..c01a3542be 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/CustomPropertyDefinitionsGet.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/script/CustomPropertyDefinitionsGet.java @@ -96,9 +96,12 @@ public class CustomPropertyDefinitionsGet extends BaseCustomPropertyWebScript { QName customisableType = mapToTypeQName(elementName); Map currentCustomProps = rmAdminService.getCustomPropertyDefinitions(customisableType); - for (Entry entry : currentCustomProps.entrySet()) + if (currentCustomProps != null) { - propData.add(entry.getValue()); + for (Entry entry : currentCustomProps.entrySet()) + { + propData.add(entry.getValue()); + } } } else