From d3331bcd0f3059d79cafb91a024ba41a80f5c59b Mon Sep 17 00:00:00 2001 From: Alan Davis Date: Fri, 6 Mar 2015 22:36:03 +0000 Subject: [PATCH] Merged HEAD-BUG-FIX (5.1/Cloud) to HEAD (5.1/Cloud) 98874: Merged 5.0.N (5.0.2) to HEAD-BUG-FIX (5.1/Cloud) 98718: Merged V4.2-BUG-FIX (4.2.5) to 5.0.N (5.0.2) 98561: Merged NESS/4.2.N-2015-02-10 (4.2.5) to V4.2-BUG-FIX (4.2.5) 98467: MNT-13358 : Share fails to render imported documents when metadata has empty cm:creator or cm:modifier values - modified the username decorator and the people bean to handle empty usernames 98550: MNT-13358 : Share fails to render imported documents when metadata has empty cm:creator or cm:modifier values - added unit tests and corrected formating of previous commit git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@98951 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- source/java/org/alfresco/repo/jscript/People.java | 2 +- .../repo/jscript/app/UsernamePropertyDecorator.java | 7 ++++++- .../org/alfresco/repo/node/integrity/IntegrityTest.java | 7 +++++++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/source/java/org/alfresco/repo/jscript/People.java b/source/java/org/alfresco/repo/jscript/People.java index 088b701d88..cf84894842 100644 --- a/source/java/org/alfresco/repo/jscript/People.java +++ b/source/java/org/alfresco/repo/jscript/People.java @@ -966,7 +966,7 @@ public class People extends BaseScopableProcessorExtension implements Initializi { NodeRef personRef = null; - ParameterCheck.mandatoryString("Username", username); + ParameterCheck.mandatory("Username", username); try { personRef = personService.getPersonOrNull(username); diff --git a/source/java/org/alfresco/repo/jscript/app/UsernamePropertyDecorator.java b/source/java/org/alfresco/repo/jscript/app/UsernamePropertyDecorator.java index 9692ec3ab0..5956168f82 100644 --- a/source/java/org/alfresco/repo/jscript/app/UsernamePropertyDecorator.java +++ b/source/java/org/alfresco/repo/jscript/app/UsernamePropertyDecorator.java @@ -60,7 +60,12 @@ public class UsernamePropertyDecorator extends BasePropertyDecorator // DO NOT change this to just use getPersonOrNullImpl // - there is Cloud THOR prod hack see personServiceImpl.personExists // - and THOR-293 - if (this.personService.personExists(username)) + if (username.isEmpty()) + { + firstName = ""; + lastName = ""; + } + else if (this.personService.personExists(username)) { NodeRef personRef = this.personService.getPerson(username, false); firstName = (String)this.nodeService.getProperty(personRef, ContentModel.PROP_FIRSTNAME); diff --git a/source/test-java/org/alfresco/repo/node/integrity/IntegrityTest.java b/source/test-java/org/alfresco/repo/node/integrity/IntegrityTest.java index 100de7ab3a..00065bd8fc 100644 --- a/source/test-java/org/alfresco/repo/node/integrity/IntegrityTest.java +++ b/source/test-java/org/alfresco/repo/node/integrity/IntegrityTest.java @@ -245,6 +245,13 @@ public class IntegrityTest extends TestCase checkIntegrityNoFailure(); } + public void testCreateWithEmptyMandatoryProperty() throws Exception + { + allProperties.put(TEST_PROP_TEXT_A, ""); + NodeRef nodeRef = createNode("abc", TEST_TYPE_WITH_PROPERTIES, allProperties); + checkIntegrityNoFailure(); + } + public void testMandatoryPropertiesRemoved() throws Exception { NodeRef nodeRef = createNode("abc", TEST_TYPE_WITH_PROPERTIES, allProperties);