SHA-1867 : Unable to create links in Shared Files / My Files root node from the Search Results page

- Added method WebScriptUtil.resolveNodeReference() which will resolve nodeRef

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/DEV/5.2.N/root@132544 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Ramona Neamtu
2016-11-08 11:47:03 +00:00
parent f39e851d7b
commit 3ff3ba22c7
5 changed files with 130 additions and 32 deletions

View File

@@ -30,9 +30,8 @@ import java.util.Map;
import java.util.StringTokenizer;
import org.alfresco.model.ContentModel;
import org.alfresco.repo.web.scripts.links.AbstractLinksWebScript;
import org.alfresco.service.ServiceRegistry;
import org.alfresco.service.cmr.activities.ActivityService;
import org.alfresco.service.cmr.links.LinkInfo;
import org.alfresco.service.cmr.repository.DocumentLinkService;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.cmr.repository.NodeService;
@@ -42,12 +41,9 @@ import org.alfresco.util.ParameterCheck;
import org.alfresco.util.PropertyCheck;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.json.JSONStringer;
import org.json.simple.JSONObject;
import org.springframework.extensions.webscripts.DeclarativeWebScript;
import org.springframework.extensions.webscripts.Status;
import org.springframework.extensions.webscripts.WebScriptException;
import org.springframework.extensions.webscripts.WebScriptRequest;
import org.springframework.extensions.webscripts.json.JSONWriter;
/**
@@ -71,6 +67,7 @@ public abstract class AbstractDocLink extends DeclarativeWebScript
protected SiteService siteService;
protected DocumentLinkService documentLinkService;
protected ActivityService activityService;
protected ServiceRegistry serviceRegistry;
private static Log logger = LogFactory.getLog(AbstractDocLink.class);
@@ -190,4 +187,10 @@ public abstract class AbstractDocLink extends DeclarativeWebScript
{
this.activityService = activityService;
}
public void setServiceRegistry(ServiceRegistry serviceRegistry)
{
this.serviceRegistry = serviceRegistry;
}
}

View File

@@ -36,6 +36,7 @@ import org.alfresco.model.ContentModel;
import org.alfresco.repo.activities.ActivityType;
import org.alfresco.repo.content.MimetypeMap;
import org.alfresco.repo.security.permissions.AccessDeniedException;
import org.alfresco.repo.web.scripts.WebScriptUtil;
import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.util.ParameterCheck;
import org.json.simple.JSONArray;
@@ -99,7 +100,7 @@ public class DocLinkPost extends AbstractDocLink
/* Parse the destination NodeRef parameter */
String destinationNodeParam = (String) json.get(PARAM_DESTINATION_NODE);
ParameterCheck.mandatoryString("destinationNodeParam", destinationNodeParam);
destinationNodeRef = new NodeRef(destinationNodeParam);
destinationNodeRef = WebScriptUtil.resolveNodeReference(destinationNodeParam, serviceRegistry.getNodeLocatorService());
List<NodeRef> nodeRefs = new ArrayList<NodeRef>();
if (json.containsKey(PARAM_MULTIPLE_FILES))