private void savePerformed(AjaxRequestTarget target, boolean decision) { LOGGER.debug("Saving work item changes."); OperationResult result = new OperationResult(OPERATION_SAVE_WORK_ITEM); try { WorkItemDto dto = workItemDtoModel.getObject(); getWorkflowService() .approveOrRejectWorkItem(dto.getWorkItemId(), decision, dto.getApproverComment(), result); } catch (Exception ex) { result.recordFatalError("Couldn't save work item.", ex); LoggingUtils.logUnexpectedException(LOGGER, "Couldn't save work item", ex); } result.computeStatusIfUnknown(); if (!result.isSuccess()) { showResult(result, false); target.add(getFeedbackPanel()); } else { showResult(result); redirectBack(); } }