Я работаю с ADF.Я видел очень много постов о загрузке карточек экс-листов с использованием Java и пробовал несколько способов.
Они предлагают использовать Servelet.Но в моем случае я использую ViewObjects и итераторы в моем управляемом компоненте.Объект рабочей книги (со всеми данными) будет сформирован в управляемом компоненте, и я могу сохранить файл локально на своем рабочем столе, но на другом рабочем столе это не сохранение или сохранение и открытие на моем рабочем столе.
Я попробовал сервлет:
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());
Но здесь я должен получить объект workBook, который сформирован в управляемом компоненте, поэтому он не работает.
Я непосредственно попробовалнаписать код в моем управляемом бине.Но это также не помогло мне.Пожалуйста, предложите мне загрузить таблицу результатов, написанную с помощью Apache POI, на клиентском компьютере.