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

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

Introduction

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

Prototype

@Nullable
public String getViewName() 

Source Link

Document

Return the view name to be resolved by the DispatcherServlet via a ViewResolver, or null if we are using a View object.

Usage

From source file:org.openmrs.web.controller.ConceptFormControllerTest.java

/**
 * Test to make sure a new patient form can save a person relationship
 * /*from   ww  w.  j a v a  2s .c om*/
 * @throws Exception
 */
@Test
public void shouldNotDeleteConceptsWhenConceptsAreLocked() throws Exception {
    // this dataset should lock the concepts
    executeDataSet("org/openmrs/web/include/ConceptFormControllerTest.xml");

    ConceptService cs = Context.getConceptService();

    // set up the controller
    ConceptFormController controller = (ConceptFormController) applicationContext.getBean("conceptForm");
    controller.setApplicationContext(applicationContext);
    controller.setSuccessView("index.htm");
    controller.setFormView("concept.form");

    // set up the request and do an initial "get" as if the user loaded the
    // page for the first time
    MockHttpServletRequest request = new MockHttpServletRequest("GET", "/dictionary/concept.form?conceptId=3");
    request.setSession(new MockHttpSession(null));
    HttpServletResponse response = new MockHttpServletResponse();
    controller.handleRequest(request, response);

    // set this to be a page submission
    request.setMethod("POST");

    request.addParameter("action", "Delete Concept"); // so that the form is processed

    // send the parameters to the controller
    ModelAndView mav = controller.handleRequest(request, response);

    Assert.assertNotSame("The purge attempt should have failed!", "index.htm", mav.getViewName());
    Assert.assertNotNull(cs.getConcept(3));

}

From source file:com.lc.storefront.interceptors.beforeview.CmsPageBeforeViewHandler.java

protected AbstractPageModel updateCmsPageInModelAndView(final HttpServletRequest request,
        final ModelAndView modelAndView) {
    // Look for the page in the model
    final AbstractPageModel requestedPage = (AbstractPageModel) modelAndView.getModel()
            .get(AbstractPageController.CMS_PAGE_MODEL);
    if (requestedPage != null) {
        final AbstractPageModel previewPage = lookupPreviewPage(request);
        if (previewPage != null && !previewPage.equals(requestedPage)) {
            // Have a preview page that overrides the current page

            // Check that the preview page is the same type as the expected
            // page
            if (!requestedPage.getClass().isInstance(previewPage)) {
                LOG.error("Preview page is of type [" + previewPage.getClass().getName()
                        + "] expected page of type [" + requestedPage.getClass().getName() + "]");
            } else {
                // Push the preview page into the model
                LOG.info("Replaced page [" + requestedPage + "] with preview page [" + previewPage + "]");
                modelAndView.addObject(AbstractPageController.CMS_PAGE_MODEL, previewPage);

                // Check to see if we are using the default view for the
                // page
                if (modelAndView.getViewName() != null
                        && modelAndView.getViewName().equals(getViewForPage(requestedPage))) {
                    final String viewForPreviewPage = getViewForPage(previewPage);
                    if (viewForPreviewPage != null && !viewForPreviewPage.equals(modelAndView.getViewName())) {
                        // Change the view name
                        LOG.info("Changing view from [" + modelAndView.getViewName() + "] to preview view ["
                                + viewForPreviewPage + "]");
                        modelAndView.setViewName(viewForPreviewPage);
                    }//from w  ww.  j a  va 2  s .  co m
                }

                return previewPage;
            }
        }
    }
    return requestedPage;
}

From source file:org.sakaiproject.metaobj.utils.mvc.impl.servlet.FormControllerImpl.java

protected ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object command,
        BindException errors) throws Exception {

    Map requestMap = HttpServletHelper.getInstance().createRequestMap(request);
    Map session = HttpServletHelper.getInstance().createSessionMap(request);
    Map application = HttpServletHelper.getInstance().createApplicationMap(request);

    ModelAndView returnedMv;

    if (controller instanceof CancelableController
            && ((CancelableController) controller).isCancel(requestMap)) {
        returnedMv = ((CancelableController) controller).processCancel(requestMap, session, application,
                command, errors);/*w  w w . j  a  v  a2 s . c  o m*/
    } else {
        returnedMv = controller.handleRequest(command, requestMap, session, application, errors);
    }

    boolean saveCookies = ServerConfigurationService.getBoolean(PROP_SAVE_COOKIES, false);

    if (errors.hasErrors()) {
        logger.debug("Form submission errors: " + errors.getErrorCount());
        HttpServletHelper.getInstance().reloadApplicationMap(request, application);
        HttpServletHelper.getInstance().reloadSessionMap(request, session);
        HttpServletHelper.getInstance().reloadRequestMap(request, requestMap);
        if (saveCookies) {
            Cookie cookie = new Cookie(FormHelper.FORM_SAVE_ATTEMPT, "yes");
            cookie.setMaxAge(30);
            cookie.setPath("/");
            response.addCookie(cookie);
        }
        return showForm(request, response, errors);
    }

    if (returnedMv.getViewName() != null) {
        // should get from mappings
        String mappedView = (String) screenMappings.get(returnedMv.getViewName());

        if (mappedView == null) {
            mappedView = returnedMv.getViewName();
        }

        //getControllerFilterManager().processFilters(requestMap, session, application, returnedMv, mappedView);

        returnedMv = new ModelAndView(mappedView, returnedMv.getModel());
    }

    //We have a successful save coming back, so we set/append to a cookie
    String savedForm = (String) session.get(FormHelper.FORM_SAVE_SUCCESS);
    if (savedForm != null && saveCookies) {
        Cookie cookie = null;
        if (request.getCookies() != null) {
            for (Cookie c : request.getCookies()) {
                if (FormHelper.FORM_SAVE_SUCCESS.equals(c.getName())) {
                    String[] forms = c.getValue().split(",");
                    StringBuilder value = new StringBuilder();
                    boolean alreadyIncluded = false;
                    for (String form : forms) {
                        if (form.equals(savedForm)) {
                            alreadyIncluded = true;
                        }
                        value.append(",").append(form);
                    }
                    if (!alreadyIncluded) {
                        value.append(",").append(savedForm);
                    }
                    cookie = new Cookie(FormHelper.FORM_SAVE_SUCCESS, value.substring(1));
                }
            }
        }
        if (cookie == null) {
            cookie = new Cookie(FormHelper.FORM_SAVE_SUCCESS, savedForm);
        }
        cookie.setMaxAge(2000000);
        cookie.setPath("/");
        response.addCookie(cookie);
    }

    HttpServletHelper.getInstance().reloadApplicationMap(request, application);
    HttpServletHelper.getInstance().reloadSessionMap(request, session);
    HttpServletHelper.getInstance().reloadRequestMap(request, requestMap);

    return returnedMv;
}

From source file:eu.europeana.core.util.web.ClickStreamLoggerImpl.java

@Override
public void logBriefResultView(HttpServletRequest request, BriefBeanView briefBeanView, SolrQuery solrQuery,
        ModelAndView page) {
    String query = briefBeanView.getPagination().getPresentationQuery().getUserSubmittedQuery(); //
    String queryConstraints = "";
    if (solrQuery.getFilterQueries() != null) {
        queryConstraints = StringUtils.join(solrQuery.getFilterQueries(), ",");
    }//w  w  w. jav a  2s . co m
    //        String pageId;
    // private String state;
    UserAction userAction = UserAction.BRIEF_RESULT;
    Map params = request.getParameterMap();
    if (params.containsKey("bt")) {
        if (request.getParameter("bt").equalsIgnoreCase("savedSearch")) {
            userAction = UserAction.BRIEF_RESULT_FROM_SAVED_SEARCH;
        }
    } else if (params.containsKey("rtr") && request.getParameter("rtr").equalsIgnoreCase("true")) {
        userAction = UserAction.RETURN_TO_RESULTS;
    }
    int pageNr = briefBeanView.getPagination().getPageNumber();
    int nrResults = briefBeanView.getPagination().getNumFound();
    String languageFacets = briefBeanView.getFacetLogs().get("LANGUAGE");
    String countryFacet = briefBeanView.getFacetLogs().get("COUNTRY");
    log.info(MessageFormat.format(
            "[action={0}, view={1}, query={2}, queryType={7}, queryConstraints=\"{3}\", page={4}, "
                    + "numFound={5}, langFacet={8}, countryFacet={9}, {6}]",
            userAction, page.getViewName(), query, queryConstraints, pageNr, nrResults, printLogAffix(request),
            solrQuery.getQueryType(), languageFacets, countryFacet));
}

From source file:org.sventon.web.ctrl.template.GoToControllerTest.java

@Test
public void testSvnHandle() throws Exception {
    final RepositoryService mockService = EasyMock.createMock(RepositoryService.class);
    final MockHttpServletRequest mockRequest = new MockHttpServletRequest();

    final BaseCommand command = new BaseCommand();
    command.setName(new RepositoryName("test"));
    command.setPath("/file.txt");
    command.setRevision(Revision.create(12));

    final GoToController ctrl = new GoToController();

    final ConfigDirectory configDirectory = TestUtils.getTestConfigDirectory();
    configDirectory.setCreateDirectories(false);
    final MockServletContext servletContext = new MockServletContext();
    servletContext.setContextPath("sventon-test");
    configDirectory.setServletContext(servletContext);
    final Application application = new Application(configDirectory);

    application.setConfigured(true);//from   w  ww. j  a  va  2 s. c  o  m
    ctrl.setServletContext(new MockServletContext());
    ctrl.setApplication(application);
    ctrl.setRepositoryService(mockService);
    ctrl.setAvailableCharsets(new AvailableCharsets("UTF-8"));

    // Test NodeKind.FILE
    expect(mockService.getNodeKind(null, command.getPath(), command.getRevisionNumber()))
            .andStubReturn(DirEntry.Kind.FILE);
    replay(mockService);

    ModelAndView modelAndView = ctrl.svnHandle(null, command, 100, null, mockRequest, null, null);
    Map model = modelAndView.getModel();
    verify(mockService);

    assertEquals(1, model.size());
    RedirectView view = (RedirectView) modelAndView.getView();
    assertEquals("/repos/test/show/file.txt", view.getUrl());

    reset(mockService);
    command.setPath("/dir");

    // Test NodeKind.DIR
    expect(mockService.getNodeKind(null, command.getPath(), command.getRevisionNumber()))
            .andStubReturn(DirEntry.Kind.DIR);
    replay(mockService);

    modelAndView = ctrl.svnHandle(null, command, 100, null, mockRequest, null, null);
    model = modelAndView.getModel();
    verify(mockService);

    assertEquals(1, model.size());
    view = (RedirectView) modelAndView.getView();
    assertEquals("/repos/test/list/dir/", view.getUrl());

    reset(mockService);

    // Test NodeKind.UNKNOWN
    expect(mockService.getNodeKind(null, command.getPath(), command.getRevisionNumber()))
            .andStubReturn(DirEntry.Kind.UNKNOWN);
    replay(mockService);

    final BindException errors = new BindException(command, "test");
    assertEquals(0, errors.getAllErrors().size());

    modelAndView = ctrl.svnHandle(null, command, 100, null, mockRequest, null, errors);
    model = modelAndView.getModel();
    verify(mockService);

    assertEquals(10, model.size());
    assertEquals("goto", modelAndView.getViewName());
}

From source file:com.mystudy.source.spring.mvc.DispatcherServlet.java

/**
 * Render the given ModelAndView./*w ww .ja va 2s .  c  o m*/
 * <p>This is the last stage in handling a request. It may involve resolving the view by name.
 * @param mv the ModelAndView to render
 * @param request current HTTP servlet request
 * @param response current HTTP servlet response
 * @throws ServletException if view is missing or cannot be resolved
 * @throws Exception if there's a problem rendering the view
 */
protected void render(ModelAndView mv, HttpServletRequest request, HttpServletResponse response)
        throws Exception {
    // Determine locale for request and apply it to the response.
    Locale locale = this.localeResolver.resolveLocale(request);
    response.setLocale(locale);

    View view;
    if (mv.isReference()) {
        // We need to resolve the view name.
        view = resolveViewName(mv.getViewName(), mv.getModelInternal(), locale, request);
        if (view == null) {
            throw new ServletException("Could not resolve view with name '" + mv.getViewName()
                    + "' in servlet with name '" + getServletName() + "'");
        }
    } else {
        // No need to lookup: the ModelAndView object contains the actual View object.
        view = mv.getView();
        if (view == null) {
            throw new ServletException("ModelAndView [" + mv + "] neither contains a view name nor a "
                    + "View object in servlet with name '" + getServletName() + "'");
        }
    }

    // Delegate to the View object for rendering.
    if (logger.isDebugEnabled()) {
        logger.debug("Rendering view [" + view + "] in DispatcherServlet with name '" + getServletName() + "'");
    }
    view.render(mv.getModelInternal(), request, response);
}

From source file:per.mnn.controller.CheckoutController.java

@RequestMapping(value = "/confirm", method = RequestMethod.POST)
public ModelAndView confirm(HttpServletRequest request, HttpServletResponse respond)
        throws UnsupportedEncodingException {

    request.setCharacterEncoding("UTF-8");

    ModelAndView retval = new ModelAndView("confirmation");
    String name = request.getParameter("name");
    String email = request.getParameter("email");
    String phone = request.getParameter("phone");
    String address = request.getParameter("address");
    String cityRegion = request.getParameter("cityRegion");
    String creditcard = request.getParameter("creditcard");

    if (name == null || name.isEmpty()) {
        retval.addObject("nameError", "true");
        retval.addObject("validationErrorFlag", "true");
        retval.setViewName("checkout");
    }/*from  w  ww  .j  a va2 s.c o m*/
    if (email == null || email.isEmpty()) {
        retval.addObject("emailError", "true");
        retval.addObject("validationErrorFlag", "true");
        retval.setViewName("checkout");
    }
    if (phone == null || phone.isEmpty()) {
        retval.addObject("phoneError", "true");
        retval.addObject("validationErrorFlag", "true");
        retval.setViewName("checkout");
    }
    if (address == null || address.isEmpty()) {
        retval.addObject("addressError", "true");
        retval.addObject("validationErrorFlag", "true");
        retval.setViewName("checkout");
    }
    if (cityRegion == null || cityRegion.isEmpty()) {
        retval.addObject("cityRegionError", "true");
        retval.addObject("validationErrorFlag", "true");
        retval.setViewName("checkout");
    }
    if (creditcard == null || creditcard.isEmpty()) {
        retval.addObject("creditcardError", "true");
        retval.addObject("validationErrorFlag", "true");
        retval.setViewName("checkout");
    }

    if (retval.getViewName() == "confirmation") {
        ShoppingCart cart = (ShoppingCart) request.getSession().getAttribute("cart");
        Session sess = HibernateUtil.getSessionFactory().openSession();
        Transaction tran = sess.beginTransaction();

        Customer customer = new Customer(name, email, phone, address, cityRegion, creditcard);
        sess.save(customer);

        CustomerOrder order = new CustomerOrder();
        order.setCustomer(customer);
        order.setAmount(BigDecimal.valueOf(cart.getTotal()));
        order.setDateCreated(new Date());
        order.setConfirmationNumber(new Random().nextInt(999999999));
        sess.save(order);

        for (ShoppingCartItem item : cart.getItems()) {
            OrderedProductId id = new OrderedProductId(order.getId(), item.getProduct().getId());
            OrderedProduct orderedProduct = new OrderedProduct();
            orderedProduct.setId(id);
            orderedProduct.setCustomerOrder(order);
            orderedProduct.setProduct(item.getProduct());
            orderedProduct.setQuantity((short) item.getQuantity());
            sess.save(orderedProduct);
            order.getOrderedProducts().add(orderedProduct);
        }

        tran.commit();
        sess.close();

        cart.clear();
        request.getSession().invalidate();
        retval.addObject("customer", customer);
        retval.addObject("orderRecord", order);
        retval.addObject("orderedProducts", order.getOrderedProducts());
    }

    return retval;
}

From source file:com.janrain.backplane2.server.Backplane2ControllerTest.java

@Test
public void testAuthenticate() throws Exception {

    User user = new User();
    user.put(User.Field.USER.getFieldName(), ChannelUtil.randomString(20));
    user.put(User.Field.PWDHASH.getFieldName(), HmacHashUtils.hmacHash("foo"));

    BusConfig2 bus1 = new BusConfig2(ChannelUtil.randomString(30), user.getIdValue(), "100", "50000");
    BusConfig2 bus2 = new BusConfig2(ChannelUtil.randomString(30), user.getIdValue(), "100", "50000");

    try {/*from   w  w w .j a v  a2  s  . c om*/
        daoFactory.getBusOwnerDAO().persist(user);

        // create a few buses
        daoFactory.getBusDao().persist(bus1);
        daoFactory.getBusDao().persist(bus2);

        refreshRequestAndResponse();

        // encode un:pw
        String credentials = testClient.getIdValue() + ":" + "secret";
        String encodedCredentials = new String(Base64.encode(credentials.getBytes()));

        logger.info("hit /authorize endpoint to get ball rolling");
        request.setRequestURI("/v2/authorize");
        request.setMethod("GET");
        request.setAuthType("BASIC");
        request.addParameter("redirect_uri", testClient.getRedirectUri());
        request.addParameter("response_type", OAUTH2_TOKEN_RESPONSE_TYPE_CODE);
        request.addParameter("client_id", testClient.getClientId());
        request.addHeader("Authorization", "Basic " + encodedCredentials);
        ModelAndView mv = handlerAdapter.handle(request, response, controller);
        logger.info("should be redirect view to authenticate => " + mv.getViewName());
        Cookie authZCookie = response.getCookie("bp2.authorization.request");
        assertNotNull(authZCookie);
        logger.info("authZ cookie = " + authZCookie.getValue());

        refreshRequestAndResponse();

        logger.info("redirect to /authenticate endpoint");
        request.setRequestURI("/v2/authenticate");
        request.setMethod("GET");
        mv = handlerAdapter.handle(request, response, controller);
        logger.info("should be authentication view => " + mv.getViewName());

        refreshRequestAndResponse();

        request.setRequestURI("/v2/authenticate");
        request.addParameter("busOwner", user.getIdValue());
        request.addParameter("password", "foo");
        request.setMethod("POST");
        mv = handlerAdapter.handle(request, response, controller);
        logger.info("should be redirect to authorize view => " + mv.getViewName());
        Cookie authNCookie = response.getCookie("bp2.bus.owner.auth");
        assertNotNull(authNCookie);
        logger.info("authN cookie = " + authNCookie.getValue());

        refreshRequestAndResponse();

        logger.info("redirect back to /authorize endpoint");
        request.setRequestURI("/v2/authorize");
        request.setMethod("POST");
        request.setAuthType("BASIC");
        request.addParameter("redirect_uri", testClient.getRedirectUri());
        request.addParameter("response_type", OAUTH2_TOKEN_RESPONSE_TYPE_CODE);
        request.addParameter("client_id", testClient.getClientId());
        request.setCookies(new Cookie[] { authNCookie, authZCookie });

        request.addHeader("Authorization", "Basic " + encodedCredentials);
        mv = handlerAdapter.handle(request, response, controller);
        Map<String, Object> model = mv.getModel();
        String authKey = (String) model.get("auth_key");
        model.put("scope", bus1.getIdValue());

        assertNotNull(authKey);
        logger.info("auth_key=" + authKey);
        logger.info("client_id=" + (String) model.get("client_id"));
        logger.info("redirect_uri=" + (String) model.get("redirect_uri"));
        logger.info("scope=" + (String) model.get("scope"));

        logger.info("should be redirect to authorize view => " + mv.getViewName());

        refreshRequestAndResponse();
        logger.info("post bus owner grant to /authorize endpoint");
        request.setRequestURI("/v2/authorize");
        request.setMethod("POST");
        request.setAuthType("BASIC");
        request.addParameter("redirect_uri", (String) model.get("redirect_uri"));
        request.addParameter("response_type", OAUTH2_TOKEN_RESPONSE_TYPE_CODE);
        request.addParameter("client_id", (String) model.get("client_id"));
        request.addParameter("auth_key", authKey);
        request.addParameter("scope", (String) model.get("scope"));
        // simulate button press
        request.addParameter("authorize", "Authorize");

        request.setCookies(new Cookie[] { authNCookie, authZCookie });

        request.addHeader("Authorization", "Basic " + encodedCredentials);
        mv = handlerAdapter.handle(request, response, controller);
        logger.info("should be redirect back to client => " + mv.getViewName());
        assertTrue(mv.getViewName().contains("?code="));

        String code = mv.getViewName().substring(mv.getViewName().indexOf("code=") + 5);
        logger.info("using code: '" + code + "' to retrieve token");

        // redeem the code for a token
        refreshRequestAndResponse();

        request.setRequestURI("/v2/token");
        request.setMethod("POST");
        request.setParameter("grant_type", OAuth2.OAUTH2_TOKEN_GRANT_TYPE_AUTH_CODE);
        request.setParameter("code", code);
        request.setParameter("redirect_uri", testClient.get(Client.ClientField.REDIRECT_URI));
        setOAuthBasicAuthentication(request, testClient.getClientId(), "secret");

        handlerAdapter.handle(request, response, controller);

        logger.info("should be a token response => " + response.getContentAsString());

        Map<String, Object> returnedBody = new ObjectMapper().readValue(response.getContentAsString(),
                new TypeReference<Map<String, Object>>() {
                });
        String tokenId = (String) returnedBody.get(OAUTH2_ACCESS_TOKEN_PARAM_NAME);
        assertNotNull(tokenId);

        Grant grant = daoFactory.getGrantDao().get(code);
        Token token = daoFactory.getTokenDao().get(tokenId);

        assertTrue(grant.get(Grant.GrantField.ISSUED_TO_CLIENT_ID)
                .equals(token.get(Token.TokenField.ISSUED_TO_CLIENT_ID)));
        assertTrue(grant.get(Grant.GrantField.ISSUED_BY_USER_ID).equals(user.getIdValue()));

    } finally {
        daoFactory.getBusOwnerDAO().delete(user.getIdValue());
        daoFactory.getBusDao().delete(bus1.getIdValue());
        daoFactory.getBusDao().delete(bus2.getIdValue());
    }

}

From source file:org.motechproject.server.outbox.web.VxmlOutboxController.java

public ModelAndView messageMenu(HttpServletRequest request, HttpServletResponse response) {
    logger.info("Generating the message menu VXML...");

    response.setContentType("text/plain");
    response.setCharacterEncoding("UTF-8");

    ModelAndView mav = new ModelAndView();

    String messageId = request.getParameter(MESSAGE_ID_PARAM);
    String language = request.getParameter(LANGUAGE_PARAM);

    logger.info("Message ID: " + messageId);

    if (messageId == null) {
        logger.error("Invalid request - missing parameter: " + MESSAGE_ID_PARAM);
        mav.setViewName(ERROR_MESSAGE_TEMPLATE_NAME);
        return mav;
    }//from   w  ww .  j a  v  a 2  s. c o  m

    OutboundVoiceMessage voiceMessage;

    try {
        voiceMessage = voiceOutboxService.getMessageById(messageId);
    } catch (Exception e) {
        logger.error("Can not get message by ID: " + messageId + " " + e.getMessage(), e);
        logger.warn("Generating a VXML with the error message...");
        mav.setViewName(ERROR_MESSAGE_TEMPLATE_NAME);
        return mav;
    }

    if (voiceMessage == null) {

        logger.error("Can not get message by ID: " + messageId + "service returned null");
        logger.warn("Generating a VXML with the error message...");
        mav.setViewName(ERROR_MESSAGE_TEMPLATE_NAME);
        return mav;
    }

    if (voiceMessage.getStatus() == OutboundVoiceMessageStatus.SAVED) {

        mav.setViewName(SAVED_MESSAGE_MENU_TEMPLATE_NAME);
    } else {
        try {
            voiceOutboxService.setMessageStatus(messageId, OutboundVoiceMessageStatus.PLAYED);
        } catch (Exception e) {
            logger.error("Can not set message status to " + OutboundVoiceMessageStatus.PLAYED
                    + " to the message ID: " + messageId, e);
        }
        mav.setViewName(MESSAGE_MENU_TEMPLATE_NAME);
    }

    String contextPath = request.getContextPath();

    logger.debug(voiceMessage.toString());
    logger.debug(mav.getViewName());

    mav.addObject("contextPath", contextPath);
    mav.addObject("message", voiceMessage);
    mav.addObject("language", language);
    mav.addObject("escape", new StringEscapeUtils());
    return mav;

}