Ejemplo n.º 1
0
  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;
  }
Ejemplo n.º 2
0
  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;
  }
Ejemplo n.º 3
0
  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());
  }
Ejemplo n.º 4
0
 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;
 }