Example usage for org.springframework.web.servlet ModelAndView getModelMap

List of usage examples for org.springframework.web.servlet ModelAndView getModelMap

Introduction

In this page you can find the example usage for org.springframework.web.servlet ModelAndView getModelMap.

Prototype

public ModelMap getModelMap() 

Source Link

Document

Return the underlying ModelMap instance (never null ).

Usage

From source file:org.openmrs.module.radiology.legacyui.report.template.web.RadiologyDashboardReportTemplatesTabControllerTest.java

@Test
public void shouldSetErrorMessageInSessionWhenMrrtReportTemplateValidationExceptionIsThrown() throws Exception {

    ValidationResult validationResult = new ValidationResult();
    validationResult.addError(new ValidationError("Missing header", "err.missing.header"));
    MrrtReportTemplateValidationException mrrtReportTemplateValidationException = new MrrtReportTemplateValidationException(
            validationResult);//from   w  ww .j a  v a2  s .c om
    doThrow(mrrtReportTemplateValidationException).when(mrrtReportTemplateService)
            .importMrrtReportTemplate(MOCK_TEMPLATE_CONTENT);

    ModelAndView modelAndView = radiologyDashboardReportTemplatesTabController.uploadReportTemplate(request,
            multipartFile);

    verify(mrrtReportTemplateService).importMrrtReportTemplate(MOCK_TEMPLATE_CONTENT);
    verifyNoMoreInteractions(mrrtReportTemplateService);

    assertNotNull(modelAndView);
    assertThat(modelAndView.getViewName(),
            is(RadiologyDashboardReportTemplatesTabController.RADIOLOGY_REPORT_TEMPLATES_TAB_VIEW));
    String errorMessage = (String) request.getSession().getAttribute(WebConstants.OPENMRS_ERROR_ATTR);
    assertNotNull(errorMessage);
    assertThat(errorMessage, is("Failed to import mrrtReportTemplate.html"));
    assertThat(modelAndView.getModelMap().get("mrrtReportTemplateValidationErrors"),
            is(validationResult.getErrors()));
}

From source file:org.openmrs.module.radiology.report.template.web.RadiologyDashboardReportTemplatesTabControllerTest.java

/**
 * @verifies set error message in session when mrrt report template
 *           validation exception is thrown
 * @see RadiologyDashboardReportTemplatesTabController#uploadReportTemplate(HttpServletRequest,
 *      MultipartFile)//from   ww  w. ja v  a  2  s.  c  o m
 */
@Test
public void uploadReportTemplate_shouldSetErrorMessageInSessionWhenMrrtReportTemplateValidationExceptionIsThrown()
        throws Exception {

    ValidationResult validationResult = new ValidationResult();
    validationResult.addError(new ValidationError("Missing header", "err.missing.header"));
    MrrtReportTemplateValidationException mrrtReportTemplateValidationException = new MrrtReportTemplateValidationException(
            validationResult);
    doThrow(mrrtReportTemplateValidationException).when(mrrtReportTemplateService)
            .importMrrtReportTemplate(MOCK_TEMPLATE_CONTENT);

    ModelAndView modelAndView = radiologyDashboardReportTemplatesTabController.uploadReportTemplate(request,
            multipartFile);

    verify(mrrtReportTemplateService).importMrrtReportTemplate(MOCK_TEMPLATE_CONTENT);
    verifyNoMoreInteractions(mrrtReportTemplateService);

    assertNotNull(modelAndView);
    assertThat(modelAndView.getViewName(),
            is(RadiologyDashboardReportTemplatesTabController.RADIOLOGY_REPORT_TEMPLATES_TAB_VIEW));
    String errorMessage = (String) request.getSession().getAttribute(WebConstants.OPENMRS_ERROR_ATTR);
    assertNotNull(errorMessage);
    assertThat(errorMessage, is("Failed to import mrrtReportTemplate.html"));
    assertThat(modelAndView.getModelMap().get("mrrtReportTemplateValidationErrors"),
            is(validationResult.getErrors()));
}

From source file:org.openmrs.module.reporting.web.controller.QueryParameterFormController.java

/**
 * Processes the form when a user submits.
 *//*www .  j  a  v  a  2  s  .c  om*/
@RequestMapping("/module/reporting/parameters/queryParameter")
public ModelAndView processForm(HttpServletRequest request, HttpServletResponse response,
        @RequestParam(value = "uuid", required = false) String uuid,
        @RequestParam(value = "type", required = false) Class<Parameterizable> type,
        @RequestParam(value = "action", required = false) String action,
        @RequestParam(value = "format", required = false) String format,
        @RequestParam(value = "successView", required = false) String successView,
        @ModelAttribute("parameterizable") Parameterizable parameterizable, BindingResult bindingResult)
        throws Exception {

    if (parameterizable == null) {
        parameterizable = ParameterizableUtil.getParameterizable(uuid, type);
    }

    if (parameterizable != null && parameterizable.getParameters().isEmpty() && StringUtils.isEmpty(action)) {
        action = "preview";
    }

    if (StringUtils.isEmpty(action)) {
        request.getSession().removeAttribute("results");
        return new ModelAndView("/module/reporting/parameters/queryParameterForm");
    } else {

        Object results = null;
        ModelAndView model = new ModelAndView();

        if (parameterizable != null) {
            EvaluationContext evaluationContext = new EvaluationContext();

            Map<String, Object> parameterValues = new HashMap<String, Object>();
            if (parameterizable != null && parameterizable.getParameters() != null) {
                for (Parameter p : parameterizable.getParameters()) {
                    Object paramVal = WidgetUtil.getFromRequest(request, p.getName(), p.getType(),
                            p.getCollectionType());
                    parameterValues.put(p.getName(), paramVal);
                }
            }

            // Set parameter values
            evaluationContext.setParameterValues(parameterValues);

            model.addObject("evaluationContext", evaluationContext);
            try {
                long startTime = System.currentTimeMillis();
                // Evaluate the parameterizable and populate the model
                results = ParameterizableUtil.evaluateParameterizable(parameterizable, evaluationContext);
                //model.addObject("results", results);
                request.getSession().setAttribute("results", results);
                long executionTime = System.currentTimeMillis() - startTime;
                model.addObject("executionTime", new Double(executionTime / 1000));

                // Use the success view if it's given, default view otherwise
                //successView = (!StringUtils.isEmpty(successView)) ? successView : defaultView;
                //successView += "?uuid=" + parameterizable.getUuid() + "&type=" + type + "&format=" + format; 
                model.setViewName("/module/reporting/parameters/queryParameterForm");

            } catch (ParameterException e) {
                log.error("unable to evaluate report: ", e);
                request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR,
                        "Unable to evaluate report: " + e.getMessage());
                request.getSession().removeAttribute("results");
                return new ModelAndView("/module/reporting/parameters/queryParameterForm");
            } catch (MissingDependencyException ex) {
                request.getSession().setAttribute(WebConstants.OPENMRS_ERROR_ATTR,
                        "Missing dependency: " + ex.getMessage());
                request.getSession().removeAttribute("results");
                return new ModelAndView("/module/reporting/parameters/queryParameterForm");
            }
        }

        log.debug("Returning model with view " + model.getViewName() + " and map " + model.getModelMap());
        return model;
    }
}