Liferay列表导出

Liferay列表导出,liferay,liferay-6,Liferay,Liferay 6,我正在liferay portlet上显示我的自定义对象列表。 现在我的问题是我想为用户提供导出功能。 列表下方将显示导出链接。 当用户单击该按钮时,它将下载显示的列表作为excel文件 我正在生成excel文件,同时生成要显示的列表。所以,现在我的问题是导出链接的行为应该如何 我的导出按钮代码 <portlet:actionURL name="exportURL" var="exportURL"></portlet:actionURL> <p><a

我正在liferay portlet上显示我的自定义对象列表。 现在我的问题是我想为用户提供导出功能。 列表下方将显示导出链接。 当用户单击该按钮时,它将下载显示的列表作为excel文件

我正在生成excel文件,同时生成要显示的列表。所以,现在我的问题是导出链接的行为应该如何

我的导出按钮代码

<portlet:actionURL name="exportURL" var="exportURL"></portlet:actionURL>
 <p><a href="<%=exportURL %>">&larr; Export</a></p>


我想的一种方法是,在生成excel文件后,我可以将其上传到Liferay的文档库中,然后在portlet上提供下载链接作为导出链接。这是一种好方法吗?

您可以使用poi-2.5.1.jar在java中生成excel文件

使用ServerSource方法

下面的代码片段,您可以使用\

Workbook workBook = new HSSFWorkbook();
Sheet sheet = workBook.createSheet("new sheet");
Row row = sheet.createRow((short)0);
Cell cell = row.createCell(0);
//set row,cell value as per your custom entity
resourceResponse.setContentType("application/vnd.ms-excel");
OutputStream out = resourceResponse.getPortletOutputStream();
workBook.write(out);
嗯,,
关于

您可以使用poi-2.5.1.jar在java中生成excel文件

使用ServerSource方法

下面的代码片段,您可以使用\

Workbook workBook = new HSSFWorkbook();
Sheet sheet = workBook.createSheet("new sheet");
Row row = sheet.createRow((short)0);
Cell cell = row.createCell(0);
//set row,cell value as per your custom entity
resourceResponse.setContentType("application/vnd.ms-excel");
OutputStream out = resourceResponse.getPortletOutputStream();
workBook.write(out);
嗯,,
关于

您应该仅在用户单击导出链接后生成文件,因为adarshr已在对您的问题的评论中写道。如果您每次在portlet中显示列表时生成文件并将其上载到下载中心,那么将是对服务器资源的无用浪费。

您应该仅在用户单击要导出的链接后生成文件,因为adarshr在对您的问题的评论中写道。如果每次列表显示在portlet中时都生成文件并将其上载到下载中心,那么将是对服务器资源的无用浪费。

而不是使用您想要使用的
。这将触发portlet的资源阶段,在该阶段,您可以提供除HTML片段以外的其他内容类型,例如Excel类型

我的印象是,您已经锁定了excel导出本身,只需要了解如何从portlet UI获取导出,对吗?在
serversource
中,您将获得一个
ResourceRequest
ResourceResponse
对象,并可以设置响应的Mimetype(及其
OutputStream

,而不是使用您想要使用的
。这将触发portlet的资源阶段,在该阶段,您可以提供除HTML片段以外的其他内容类型,例如Excel类型


我的印象是,您已经锁定了excel导出本身,只需要了解如何从portlet UI获取导出,对吗?在
serversource
中,您将获得
ResourceRequest
ResourceResponse
对象,并可以设置响应的Mimetype(及其
OutputStream

只要用户单击该链接,您就应该动态生成excel文件。手动生成并上传-在现实生活中不起作用,因为你很快就会发现自己总是在上传更改。我不是手动操作,我有一个实用程序类,现在可以生成它。唯一的事情是点击这个按钮,我应该能够调用将生成Excel文件的工具,并且应该可以下载。你应在用户单击该链接时动态生成excel文件。手动生成并上传-在现实生活中不起作用,因为你很快就会发现自己总是在上传更改。我不是手动操作,我有实用程序类,现在可以生成它。唯一的事情是点击这个按钮,我应该能够调用将生成Excel文件的工具类,并且它也应该可以下载了。谢谢Pankaj,我收到了。谢谢Pankaj,我收到了。