文档和媒体文件视图链接

时间:2015-03-16 09:12:59

标签: java liferay portlet

有没有办法获取在文档和媒体portlet中打开文档的URL?不是直接下载它,而是打开文档视图。例如。我的potrlet中有一个DLFileEntry对象,在单击视图href链接后,它会在Documents and Media portlet中打开此条目的视图。谢谢。

2 个答案:

答案 0 :(得分:0)

创建URL以查看来自另一个portlet的存储文件可以像这样实现。留在这里继续使用。

    public Map<String, String> fileViewUrl(List<DLFileEntry> entries,
        HttpServletRequest request) {
    Map<String, String> urls = new HashMap<String, String>();

    for (DLFileEntry fileEntry : entries) {

        PortletURL myUrl = PortletURLFactoryUtil.create(request, "20",
                themeDisplay.getPlid(), PortletRequest.RENDER_PHASE);
        try {
            myUrl.setWindowState(WindowState.NORMAL);
        } catch (WindowStateException e2) {
            // TODO Auto-generated catch block
            e2.printStackTrace();
        }
        try {
            myUrl.setPortletMode(PortletMode.VIEW);
        } catch (PortletModeException e2) {
            // TODO Auto-generated catch block
            e2.printStackTrace();
        }

        StringBuilder sb = new StringBuilder();
        sb.append(myUrl.toString());
        sb.append("&_20_struts_action=%2Fdocument_library%2Fview_file_entry&_20_fileEntryId=");
        sb.append(fileEntry.getFileEntryId());
        urls.put(fileEntry.getTitle(), sb.toString());
    }

    return urls;

}

答案 1 :(得分:0)

如果您想预览文件条目,请使用:DLUtil.getPreviewURL