diff --git a/source/java/org/alfresco/repo/module/tool/ModuleManagementTool.java b/source/java/org/alfresco/repo/module/tool/ModuleManagementTool.java index 3936de9cb5..728ad01c4b 100644 --- a/source/java/org/alfresco/repo/module/tool/ModuleManagementTool.java +++ b/source/java/org/alfresco/repo/module/tool/ModuleManagementTool.java @@ -313,6 +313,9 @@ public class ModuleManagementTool throw new AlfrescoRuntimeException("File mapping targets must start with '/' but was '" + mappingTarget + "'"); } + mappingSource = mappingSource.trim(); //trim whitespace + mappingTarget = mappingTarget.trim(); //trim whitespace + // Run throught the files one by one figuring out what we are going to do during the copy copyToWar(ampFileLocation, warFileLocation, mappingSource, mappingTarget, installedFiles, preview); diff --git a/source/java/org/alfresco/repo/module/tool/ModuleManagementToolTest.java b/source/java/org/alfresco/repo/module/tool/ModuleManagementToolTest.java index 9e8127a362..70751c2ca4 100644 --- a/source/java/org/alfresco/repo/module/tool/ModuleManagementToolTest.java +++ b/source/java/org/alfresco/repo/module/tool/ModuleManagementToolTest.java @@ -269,6 +269,27 @@ public class ModuleManagementToolTest extends TestCase } } + public void testWhiteSpaceInCustomMapping() + throws Exception + { + manager.setVerbose(true); + + String warLocation = getFileLocation(".war", "module/test.war"); + String ampLocation = getFileLocation(".amp", "module/test_v3.amp"); + + // Initial install of module + this.manager.installModule(ampLocation, warLocation, false, false, true); + + List files = new ArrayList(10); + files.add("/WEB-INF/classes/alfresco/module/test/module.properties"); + files.add("/WEB-INF/classes/alfresco/module/test/modifications.install"); + files.add("/WEB-INF/lib/test.jar"); + files.add("/WEB-INF/classes/alfresco/module/test/module-context.xml"); + files.add("/images/test.jpg"); + files.add("/css/test.css"); + files.add("/extra.txt"); + checkForFileExistance(warLocation, files); + } public void testList() throws Exception diff --git a/source/test-resources/module/test_v3.amp b/source/test-resources/module/test_v3.amp new file mode 100644 index 0000000000..dd5ff507fa Binary files /dev/null and b/source/test-resources/module/test_v3.amp differ