diff --git a/config/alfresco/templates/webscripts/org/alfresco/repository/forms/form.get.js b/config/alfresco/templates/webscripts/org/alfresco/repository/forms/form.get.js index b9e6c1069b..40012b0275 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/repository/forms/form.get.js +++ b/config/alfresco/templates/webscripts/org/alfresco/repository/forms/form.get.js @@ -105,6 +105,8 @@ function main() { formModel.data.formData[k.replace(/:/g, "_")] = utils.toISO8601(value); } + // There is no need to handle java.util.List instances here as they are + // returned from ScriptFormData.java as Strings else { formModel.data.formData[k.replace(/:/g, "_")] = value; diff --git a/source/java/org/alfresco/repo/web/scripts/forms/AbstractTestFormRestApi.java b/source/java/org/alfresco/repo/web/scripts/forms/AbstractTestFormRestApi.java index 6a0c4bd9a5..3e7f51a7de 100644 --- a/source/java/org/alfresco/repo/web/scripts/forms/AbstractTestFormRestApi.java +++ b/source/java/org/alfresco/repo/web/scripts/forms/AbstractTestFormRestApi.java @@ -41,6 +41,7 @@ import org.alfresco.service.cmr.repository.ContentService; import org.alfresco.service.cmr.repository.ContentWriter; import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.repository.NodeService; +import org.alfresco.service.namespace.NamespaceService; import org.alfresco.service.namespace.QName; import org.alfresco.util.GUID; import org.alfresco.web.scripts.TestWebScriptServer.GetRequest; @@ -59,11 +60,6 @@ public abstract class AbstractTestFormRestApi extends BaseWebScriptTest private ContentService contentService; private Repository repositoryHelper; - public AbstractTestFormRestApi() - { - super(); - } - @Override protected void setUp() throws Exception { @@ -82,6 +78,7 @@ public abstract class AbstractTestFormRestApi extends BaseWebScriptTest String guid = GUID.generate(); + // Create a test file (not a folder) FileInfo fileInfoTestNode = this.fileFolderService.create(companyHomeNodeRef, "test_forms_doc" + guid + ".txt", ContentModel.TYPE_CONTENT); testNodeRef = fileInfoTestNode.getNodeRef(); @@ -98,6 +95,21 @@ public abstract class AbstractTestFormRestApi extends BaseWebScriptTest contentWriter.setEncoding("UTF-8"); contentWriter.setMimetype(MimetypeMap.MIMETYPE_TEXT_PLAIN); contentWriter.putContent("The quick brown fox jumped over the lazy dog."); + + // create a node to use as target of association + Map docProps = new HashMap(1); + docProps.put(ContentModel.PROP_NAME, "associatedDocument" + guid + ".txt"); + NodeRef associatedDoc = this.nodeService.createNode( + companyHomeNodeRef, + ContentModel.ASSOC_CONTAINS, + QName.createQName(NamespaceService.CONTENT_MODEL_1_0_URI, "associatedDocument" + guid + ".txt"), + ContentModel.TYPE_CONTENT, + docProps).getChildRef(); + + // Now create an association between these two node refs. + aspectProps.clear(); + this.nodeService.addAspect(this.testNodeRef, ContentModel.ASPECT_REFERENCING, aspectProps); + this.nodeService.createAssociation(this.testNodeRef, associatedDoc, ContentModel.ASSOC_REFERENCES); // Create and store the path StringBuilder builder = new StringBuilder();