如何从jsp中的文档和媒体文件夹中获取特定图像

时间:2016-03-03 08:01:37

标签: java liferay liferay-6

我已成功在文档和媒体库中创建文件夹和上传文件。

我将文件名存储在DB中,并根据该文件名我想从文档库中获取该特定文件。我是Liferay的新手。

我正在获取保存在Document&中的所有文件。使用此代码段的媒体库。但有没有办法直接使用文件名获取文件。

这是我的代码段

public void getAllDLFileLink(ThemeDisplay themeDisplay,String folderName){      
         try {
             Folder folder =DLAppServiceUtil.getFolder(themeDisplay.getScopeGroupId(), DLFolderConstants.DEFAULT_PARENT_FOLDER_ID, folderName);
             List<DLFileEntry> dlFileEntries = DLFileEntryLocalServiceUtil.getFileEntries(themeDisplay.getScopeGroupId(), folder.getFolderId());
             for (DLFileEntry file : dlFileEntries) {
                    String url = themeDisplay.getPortalURL() + themeDisplay.getPathContext() + "/documents/" + themeDisplay.getScopeGroupId() + "/" + 
                                  file.getFolderId() +  "/" +file.getTitle() ;
                    System.out.println("DL Link=>"+url);
                }
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

2 个答案:

答案 0 :(得分:0)

由于您的代码段已找到DLFileEntry的网址,因此我假设您想要获取二进制内容。检查DLFileEntry.getContentStream()

如果此假设错误,并且您希望将图像嵌入到portlet的HTML输出中,请使用<img src="URL-HERE"/>标记内的网址

答案 1 :(得分:0)

您可以使用String fileName = "abc.jpg"; Folder folder = DLAppServiceUtil.getFolder(themeDisplay.getScopeGroupId(), DLFolderConstants.DEFAULT_PARENT_FOLDER_ID, folderName); DLFileEntry dlFileEntry = DLFileEntryLocalServiceUtil.getFileEntry( themeDisplay.getScopeGroupId(), folder.getFolderId(), fileName); 使用文件名/标题获取文件,如下所示:

Get-CsUser -Filter {LineURI -like $yourNumber}  

但是,标题以扩展名存储,因此,您需要传递图像/文件的完整名称。