public static InputStream createReport( ReportOutputType report, AjaxDownloadBehaviorFromStream ajaxDownloadBehaviorFromStream, PageBase pageBase) { OperationResult result = new OperationResult(OPERATION_DOWNLOAD_REPORT); ReportManager reportManager = pageBase.getReportManager(); if (report == null) { return null; } String contentType = reportExportTypeMap.get(report.getExportType()); if (StringUtils.isEmpty(contentType)) { contentType = "multipart/mixed; charset=UTF-8"; } ajaxDownloadBehaviorFromStream.setContentType(contentType); InputStream input = null; try { input = reportManager.getReportOutputData(report.getOid(), result); } catch (Exception e) { pageBase.error( pageBase.getString("pageCreatedReports.message.downloadError") + " " + e.getMessage()); LoggingUtils.logUnexpectedException(LOGGER, "Couldn't download report.", e); LOGGER.trace(result.debugDump()); } finally { result.computeStatusIfUnknown(); } if (WebComponentUtil.showResultInPage(result)) { pageBase.showResult(result); } return input; }
private InputStream createReport() { OperationResult result = new OperationResult(OPERATION_DOWNLOAD_REPORT); ReportManager reportManager = getReportManager(); if (currentReport == null) { return null; } InputStream input = null; try { input = reportManager.getReportOutputData(currentReport.getOid(), result); } catch (Exception e) { error(getString("pageCreatedReports.message.downloadError") + " " + e.getMessage()); LoggingUtils.logException(LOGGER, "Couldn't download report.", e); LOGGER.trace(result.debugDump()); } finally { result.computeStatusIfUnknown(); } if (WebMiscUtil.showResultInPage(result)) { showResultInSession(result); } return input; }
private void deleteSelectedConfirmedPerformed( AjaxRequestTarget target, List<ReportOutputType> objects) { OperationResult result = new OperationResult(OPERATION_DELETE); for (ReportOutputType output : objects) { WebModelUtils.deleteObject(ReportOutputType.class, output.getOid(), result, this); } result.computeStatusIfUnknown(); ObjectDataProvider provider = getTableDataProvider(); provider.clearCache(); showResult(result); target.add((Component) getReportOutputTable()); target.add(getFeedbackPanel()); }
private String getReportFileName() { try { OperationResult result = new OperationResult(OPERATION_GET_REPORT_FILENAME); ReportOutputType reportOutput = WebModelServiceUtils.loadObject( ReportOutputType.class, currentReport.getOid(), getPageBase(), null, result) .asObjectable(); String fileName = reportOutput.getFilePath(); if (fileName.contains("/")) { fileName = fileName.substring(fileName.lastIndexOf("/") + 1); } return fileName; } catch (Exception ex) { // nothing to do } return null; }