diff --git a/source/java/org/alfresco/repo/importer/view/ViewParser.java b/source/java/org/alfresco/repo/importer/view/ViewParser.java
index 124e52fb2a..405718bc35 100644
--- a/source/java/org/alfresco/repo/importer/view/ViewParser.java
+++ b/source/java/org/alfresco/repo/importer/view/ViewParser.java
@@ -718,10 +718,12 @@ public class ViewParser implements Parser
isMLProperty = false;
locale = xpp.getAttributeValue(NamespaceService.REPOSITORY_VIEW_1_0_URI, VIEW_LOCALE_ATTR);
+ Boolean isNull = Boolean.valueOf(xpp.getAttributeValue(NamespaceService.REPOSITORY_VIEW_1_0_URI, VIEW_ISNULL_ATTR));
+ String decoratedValue = isNull ? null : "";
eventType = xpp.next();
if (eventType == XmlPullParser.TEXT)
{
- value = xpp.getText();
+ decoratedValue = xpp.getText();
eventType = xpp.next();
}
if (eventType == XmlPullParser.END_TAG)
@@ -730,7 +732,7 @@ public class ViewParser implements Parser
{
logger.debug("Found ML entry: " + locale + "=" + value);
}
- mlText.addValue(DefaultTypeConverter.INSTANCE.convert(Locale.class, locale), value);
+ mlText.addValue(DefaultTypeConverter.INSTANCE.convert(Locale.class, locale), decoratedValue);
eventType = xpp.next();
if (eventType == XmlPullParser.TEXT)
diff --git a/source/java/org/alfresco/repo/security/authority/AuthorityDAOImpl.java b/source/java/org/alfresco/repo/security/authority/AuthorityDAOImpl.java
index 3056a4dd84..ec5e701d2a 100644
--- a/source/java/org/alfresco/repo/security/authority/AuthorityDAOImpl.java
+++ b/source/java/org/alfresco/repo/security/authority/AuthorityDAOImpl.java
@@ -994,8 +994,20 @@ public class AuthorityDAOImpl implements AuthorityDAO, NodeServicePolicies.Befor
}
- // Take advantage of the fact that the authority name is on the child association
public boolean isAuthorityContained(NodeRef authorityNodeRef, String authorityToFind)
+ {
+ // Look up the desired authority using case sensitivity rules appropriate for the authority type
+ NodeRef authorityToFindRef = getAuthorityOrNull(authorityToFind);
+ if (authorityToFindRef == null)
+ {
+ // No such authority so it won't be contained anywhere
+ return false;
+ }
+ // Now we can just search for the NodeRef
+ return isAuthorityContainedImpl(authorityNodeRef, authorityToFindRef);
+ }
+
+ private boolean isAuthorityContainedImpl(NodeRef authorityNodeRef, NodeRef authorityToFindRef)
{
List