public ActionForward printBudgetForm( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { BudgetForm budgetForm = (BudgetForm) form; Budget budget = budgetForm.getBudgetDocument().getBudget(); Integer selectedLine = getSelectedLine(request); String budgetFormToPrint = budget.getBudgetPrintForms().get(selectedLine).getBudgetReportId(); if (budgetForm.getSelectedToPrintComment() != null && budgetFormToPrint != null) { String forms[] = budgetForm.getSelectedToPrintComment(); if (forms[0].equals(budgetFormToPrint)) { budget.setPrintBudgetCommentFlag("true"); } } budgetForm.setSelectedToPrintComment(null); BudgetPrintService budgetPrintService = KcServiceLocator.getService(BudgetPrintService.class); ActionForward forward = mapping.findForward(MAPPING_BASIC); if (budgetFormToPrint != null) { AttachmentDataSource dataStream = budgetPrintService.readBudgetPrintStream(budget, budgetFormToPrint); if (dataStream.getData() != null) { streamToResponse(dataStream, response); forward = null; } } return forward; }