迭代Liferay中的文档库中的图像

时间:2013-04-17 11:16:37

标签: liferay liferay-6 document-library

我想显示liferay文档库中的图像 我应该如何迭代以获取所有图像并显示它们?

我现在的代码是:

<portlet:renderURL  var="viewImageDataURL"/>

<liferay-ui:search-container delta="20" emptyResultsMessage="No Results Found">
    <liferay-ui:search-container-results
            total="<%= employeeImages.size() %>"
            results="<%= ListUtil.subList(employeeImages, searchContainer.getStart(), searchContainer.getEnd()) %>" />
    <liferay-ui:search-container-row modelVar="search"
            className="com.liferay.portlet.documentlibrary.service.DLFileEntryLocalServiceUtil">

        <liferay-ui:search-container-column-text
                name="ImageName"
                value = '<img  src="<%=search.getDLFileEntry(1)%>"/>'>
        </liferay-ui:search-container-column-text>
    </liferay-ui:search-container-row>

    <liferay-ui:search-iterator searchContainer="<%=searchContainer %>" paginate="<%=true%>" />

</liferay-ui:search-container>

我应该如何迭代?从文档库中显示图像的功能是getDLFileEntry(fileId),我想显示所有值。

已编辑的代码:

我使用的代码是:

<portlet:renderURL  var="viewImageDataURL"/>

<liferay-ui:search-container delta="20" emptyResultsMessage="No Results Found">
    <liferay-ui:search-container-results
        total="<%=DLFileEntryLocalServiceUtil.getDLFileEntriesCount() %>"
        results="<%=DLFileEntryLocalServiceUtil.getFileEntries(searchContainer.getStart(), searchContainer.getEnd())%>" />

    <liferay-ui:search-container-row
            modelVar="search"
            className="com.liferay.portlet.documentlibrary.model.impl.DLFileEntry">
        <liferay-ui:search-container-column-text
                name="ImageName"
                value = '<img src="<%=search.getDLFileEntries(searchContainer.getStart(), searchContainer.getEnd())%>"/>'>
        </liferay-ui:search-container-column-text>
    </liferay-ui:search-container-row>

    <liferay-ui:search-iterator searchContainer="<%=searchContainer %>" paginate="<%=true%>" />

</liferay-ui:search-container>

错误显示在以下行中:

,错误描述为:

  

com.liferay.portlet.documentlibrary.model.impl.DLFileEntry无法解析为类型

1 个答案:

答案 0 :(得分:1)

您提供的属性值className似乎不正确。

我相信结果值将是您的情况下DLFileEntry类型的列表。

您可以将指定的className指定为要在搜索容器中迭代的模型名称[com.liferay.portlet.documentlibrary.model.impl.DLFileEntry]。 keyProperty作为模型的一些主键名称,

<liferay-ui:search-container-row className="com.liferay.portlet.documentlibrary.model.impl.DLFileEntry" keyProperty="fileEntryId" modelVar="searchRow">

现在,可以将searchRow视为迭代对象。

您可以调用DLFileEntry模型的任何getter方法来将其用于显示。

=============================================== ================================ <liferay-ui:search-container searchContainer="${searchContainerObj}"> <liferay-ui:search-container-results results="<%=LIST OF OBJECT OF DLFileEntry%>"/> <liferay-ui:search-container-row className="com.liferay.portlet.documentlibrary.model.impl.DLFileEntry" keyProperty="fileEntryId" modelVar="fileEntry"> <img src="<%= DLUtil.getThumbnailSrc(fileEntry, fileEntry.getFileVersion(), null, themeDisplay) %>" /> </liferay-ui:search-container-row>
</liferay-ui:search-container>

让我解释一下上面代码的术语。 liferay-ui:search-container-results标签将包含对象列表,您希望在搜索容器中显示。 liferay-ui:search-container-row标签将定义modelVar fileEntry,它将是List对象类型的迭代对象。 在liferay-ui:search-container-row的主体中,modelVar fileEntry将可用。 此处如果结果列表的大小为3,则会显示3个缩略图。