### Eclipse Workspace Patch 1.0 #P magnolia-module-data Index: src/main/java/info/magnolia/module/data/controls/DataFileControl.java =================================================================== --- src/main/java/info/magnolia/module/data/controls/DataFileControl.java (revision 40126) +++ src/main/java/info/magnolia/module/data/controls/DataFileControl.java (working copy) @@ -33,7 +33,6 @@ */ package info.magnolia.module.data.controls; -import info.magnolia.cms.gui.control.File; import info.magnolia.cms.gui.dialog.DialogFile; @@ -41,10 +40,13 @@ * @author Philipp Bracher * @version $Id$ * + * + * @deprecated use standard DialogFile instead. @class DialogFile is now resolving the link repository aware */ public class DataFileControl extends DialogFile { - protected String getFileURI(File control) { - return "/data" + control.getHandle(); - } + // Not needed anymore, because the DialogFile class is resolving now repository aware +// protected String getFileURI(File control) { +// return "/data" + control.getHandle(); +// } } #P magnolia-gui Index: src/main/java/info/magnolia/cms/gui/dialog/DialogFile.java =================================================================== --- src/main/java/info/magnolia/cms/gui/dialog/DialogFile.java (revision 40126) +++ src/main/java/info/magnolia/cms/gui/dialog/DialogFile.java (working copy) @@ -33,13 +33,18 @@ */ package info.magnolia.cms.gui.dialog; +import info.magnolia.cms.beans.config.ContentRepository; import info.magnolia.cms.beans.config.MIMEMapping; import info.magnolia.cms.beans.runtime.Document; import info.magnolia.cms.beans.runtime.MultipartForm; import info.magnolia.cms.core.Content; +import info.magnolia.cms.core.HierarchyManager; +import info.magnolia.cms.core.NodeData; import info.magnolia.cms.gui.control.File; import info.magnolia.cms.gui.misc.CssConstants; import info.magnolia.cms.gui.misc.Spacer; +import info.magnolia.link.LinkException; +import info.magnolia.link.LinkUtil; import java.io.IOException; import java.io.Writer; @@ -226,7 +231,21 @@ } protected String getLink(File control) { - String link = this.getRequest().getContextPath() + getFileURI(control); + String link = StringUtils.EMPTY; + + NodeData binary; + try { + HierarchyManager hm = control.getWebsiteNode().getHierarchyManager(); + binary = hm.getNodeData(getFileURI(control)); + link = LinkUtil.createLink(binary); + } catch (RepositoryException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (LinkException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + if (!StringUtils.isEmpty(control.getExtension())) { link += "." + control.getExtension(); }