如何列出opencms中文件夹中的文件?
How to list files from a folder in opencms?
我需要在 opencms 中创建一个新的资源类型,它有 1 个字段。该字段用于目标文件夹。
每次我 select 来自 VFS 的文件夹并保存资源(xml)时,格式化程序将呈现指定文件夹中的文件列表。
我设法创建了一个 jsp 文件,它将创建所需文件的列表,但仅对目标文件夹进行硬编码。我不知道如何从资源类型 (xml) 中读取数据,我可以使用 el 表达式访问它。
我不确定这是否有效。请尝试一下。
<cms:formatter var="content" val="value">
<cms:contentload collector="singleFile" param="${value.TargetFolder.stringValue}">
<cms:contentshow element="Title" />
</cms:contentload>
</cms:formatter>
value
是 Map<String, CmsJspContentAccessValueWrapper>
类型。您可以检查 Javadoc 以查看您还有哪些其他可用方法。
我把收集器从:
CmsDefaultResourceCollector.getSingleFile()
另一种读取 XMLContent 的方法是使用 Java。例如:
<c:set var="path" value="${value.TargetFolder.stringValue}"/>
<%
String path = pageContext.getAttribute("path");
CmsXmlContent xmlContent = CmsXmlContentFactory.unmarshal(jsp.getCmsObject(), path);
xmlContent.getStringValue(jsp.getCmsObject(), "Title", locale);
%>
我需要在 opencms 中创建一个新的资源类型,它有 1 个字段。该字段用于目标文件夹。 每次我 select 来自 VFS 的文件夹并保存资源(xml)时,格式化程序将呈现指定文件夹中的文件列表。
我设法创建了一个 jsp 文件,它将创建所需文件的列表,但仅对目标文件夹进行硬编码。我不知道如何从资源类型 (xml) 中读取数据,我可以使用 el 表达式访问它。
我不确定这是否有效。请尝试一下。
<cms:formatter var="content" val="value">
<cms:contentload collector="singleFile" param="${value.TargetFolder.stringValue}">
<cms:contentshow element="Title" />
</cms:contentload>
</cms:formatter>
value
是 Map<String, CmsJspContentAccessValueWrapper>
类型。您可以检查 Javadoc 以查看您还有哪些其他可用方法。
我把收集器从: CmsDefaultResourceCollector.getSingleFile()
另一种读取 XMLContent 的方法是使用 Java。例如:
<c:set var="path" value="${value.TargetFolder.stringValue}"/>
<%
String path = pageContext.getAttribute("path");
CmsXmlContent xmlContent = CmsXmlContentFactory.unmarshal(jsp.getCmsObject(), path);
xmlContent.getStringValue(jsp.getCmsObject(), "Title", locale);
%>