0

我正在实现一个自定义 pdf 导出器,但我需要将我的数据表从视图传递到我的支持 bean,但我不知道该怎么做。

在视图中,我将有一个如下所示的命令链接:

  <h:commandLink action="#{procesos.exportPDF( mytable , 'procesos')}">
     </h:commandLink>

这是接收 DataTable 作为参数的方法:

public void exportPDF(DataTable table, String filename) throws IOException {
        FacesContext context = FacesContext.getCurrentInstance();
        Exporter exporter = new CustomPDFExporter();
        exporter.export(context, table, filename, false, false, "iso-8859-1", null, null);
        context.responseComplete();
    }

无论如何..我想做的是使用custompdf导出器修改列宽,因为dataexporter和primefaces的导出器扩展不允许该功能,所以如果有人知道或有一个允许它的自定义pdf导出器将不胜感激显示一点(更好的全部)代码:)!

谢谢。

4

1 回答 1

2

我有同样的问题。我没有直接通过桌子。我只是传递了表单和表格的 id 并使用了 findComponent

FacesContext context = FacesContext.getCurrentInstance();
UIViewRoot viewRoot = context.getViewRoot();

// find table by form- and table-id
UIComponent component = viewRoot.findComponent(formId).findComponent(tableId);
DataTable table = (DataTable) component;
于 2013-07-02T08:06:18.093 回答