BIRT Web查看器xlsx导出问题

时间:2015-03-30 10:12:19

标签: export-to-excel birt

我的要求是将报表数据从Web查看器导出为xlsx格式。但是xlsx选项在导出对话框中根本不会出现。 我正在使用jetty web服务器和birt运行时4.2.2。

下面是/root/pr/lib/birt-runtime-4_2_2/birt/webcontent/birt/pages/dialog/ExportReportDialogFragment.jsp中的相关代码段(我修改后根据另一篇文章查看xlsx选项) StackOverflow.com)。

<%
<%--    String[] supportedFormats = ParameterAccessor.supportedFormats; --%>
        String[] supportedFormats = {"pdf","xls","xlsx"};
%>

<TABLE CELLSPACING="2" CELLPADDING="2" CLASS="birtviewer_dialog_body">
        <TR HEIGHT="5px"><TD></TD></TR>
        <TR>
                <TD>
                <label for="exportFormat"><%=BirtResources.getMessage( "birt.viewer.dialog.export.format" )%></label>
                <SELECT ID="exportFormat" NAME="format" CLASS="birtviewer_exportreport_dialog_select">
                        <%
                                ParameterAccessor.sortSupportedFormatsByDisplayName(supportedFormats);

                                for ( int i = 0; i < supportedFormats.length; i++ )
                                {
                        %>
                                                <OPTION VALUE="<%= supportedFormats[i] %>"><%= ParameterAccessor.getOutputFormatLabel( supportedFormats[i] ) %></OPTION>
                        <%
                                }
                        %>
                </SELECT>
                </TD>
        </TR>

在/root/pr/lib/birt-runtime-4_2_2/birt/WEB-INF/viewer.properties中,我在适当的位置添加了以下两行。

viewer.extension.xlsx = XLSX, viewer.label.xlsx = XLSX

但仍然在网络浏览器中,xlsx选项尚未到来。 你能帮我找到出路吗?

2 个答案:

答案 0 :(得分:1)

在这里,我找到了解决问题的方法。 首先,要将birt 4.4.2与jetty集成并替换旧版本,我们需要用应用程序的WEB-INF / lib目录替换所有旧版本的birt jar和新版本的birt jar。最好先备份WEB-INF / lib目录,然后再从lib目录中删除所有旧版本的jar,然后再添加新的jar。 其次,我们需要将新的birt-runtime目录(例如birt-runtime-4_4_2)放入应用程序的“lib”目录(旧的birt-runtime目录也应该驻留在其中)并从eclipse java构建路径中引用这些新的jar并删除旧的birt-runtime jar引用。做一个小改动,新编译birt-chart并运行以获得所需的结果。在此之后,从应用程序的“lib”目录重命名或删除旧的birt-runtime目录,其中旧的和新的运行时目录都驻留在该目录中。

答案 1 :(得分:0)

XLSX发射器已包含在BIRT 4.3中,因此即使更改JSP页面和.properties文件,它也无法使用4.2.2运行时。

一个选项是在您现有的Birt安装中自己包含spudsoft发射器,但这很复杂,您最好升级到最新版本,如BIRT 4.4.2。