需要使用Apache POI在ADF中下载Excel表格

时间:2018-05-29 09:08:04

标签: excel download apache-poi oracle-adf

我正在与ADF合作。我已经看到很多关于使用java下载excelsheet的帖子,并试过很多方法。

他们建议使用Servelet。但就我而言,我在托管bean中使用ViewObjects和迭代器。 Workbook对象(包含所有数据)将在托管bean中形成,我可以在我的桌面本地保存文件,但在其他桌面上,它不是保存或保存并在我的桌面上打开。

我尝试了服务:

                  FacesContext fc = FacesContext.getCurrentInstance();
        HttpServletResponse response = (HttpServletResponse) fc.getExternalContext().getResponse();
        HttpServletRequest request = (HttpServletRequest) fc.getExternalContext().getRequest();
        response = (HttpServletResponse) fc.getExternalContext().getResponse();
      //  ADFUtils.setSessionAttribute("WorkSheetObj", workBook);
        RequestDispatcher dispatcher = request.getRequestDispatcher("/excelsheetdownloadServlet");

  response = (HttpServletResponse) fc.getExternalContext().getResponse();
        response.setContentType("application/vnd.ms-excel"); 
        response.setHeader("Content-disposition", "inline;filename=inline.xls"); 
        workBook.write(response.getOutputStream());

但是在这里我必须获得在托管bean中形成的workBook对象,因此它无法正常工作。

我直接尝试在托管bean中编写代码。 但那也没有帮助我。请建议我下载客户端计算机上从Apache POI编写的excelsheet。

0 个答案:

没有答案