Package org.springframework.web.portlet

Examples of org.springframework.web.portlet.ModelAndView


   * @see #setSuccessView
   * @see org.springframework.validation.Errors
   * @see org.springframework.validation.BindException#getModel
   */
  protected ModelAndView onSubmitRender(Object command, BindException errors) throws Exception {
    ModelAndView mv = onSubmitRender(command);
    if (mv != null) {
      // simplest onSubmit version implemented in custom subclass
      return mv;
    }
    else {
      // default behavior: render success view
      if (getSuccessView() == null) {
        throw new PortletException("successView isn't set");
      }
      return new ModelAndView(getSuccessView(), errors.getModel());
    }
  }
View Full Code Here


   * Return a ModelAndView object with the specified view name.
   */
  protected ModelAndView handleRenderRequestInternal(RenderRequest request, RenderResponse response)
      throws Exception {

    return new ModelAndView(getViewName());
  }
View Full Code Here

  public void handleActionRequest(ActionRequest request, ActionResponse response) throws Exception {
    throw new PortletException("PortletModeNameViewController does not handle action requests");
  }

  public ModelAndView handleRenderRequest(RenderRequest request, RenderResponse response) {
    return new ModelAndView(request.getPortletMode().toString());
  }
View Full Code Here

    PortletHandlerMethodResolver methodResolver = getMethodResolver(handler);
    Method handlerMethod = methodResolver.resolveHandlerMethod(request, response);
    PortletHandlerMethodInvoker methodInvoker = new PortletHandlerMethodInvoker(methodResolver);

    Object result = methodInvoker.invokeHandlerMethod(handlerMethod, handler, webRequest, implicitModel);
    ModelAndView mav = methodInvoker.getModelAndView(handlerMethod, handler.getClass(), result, implicitModel);
    methodInvoker.updateModelAttributes(
        handler, (mav != null ? mav.getModel() : null), implicitModel, webRequest);

    // Expose implicit model for subsequent render phase.
    if (response instanceof ActionResponse && !implicitModel.isEmpty()) {
      ActionResponse actionResponse = (ActionResponse) response;
      try {
View Full Code Here

    @SuppressWarnings("unchecked")
    public ModelAndView getModelAndView(
        Method handlerMethod, Class handlerType, Object returnValue, ExtendedModelMap implicitModel) {

      if (returnValue instanceof ModelAndView) {
        ModelAndView mav = (ModelAndView) returnValue;
        mav.getModelMap().mergeAttributes(implicitModel);
        return mav;
      }
      else if (returnValue instanceof org.springframework.web.servlet.ModelAndView) {
        org.springframework.web.servlet.ModelAndView smav = (org.springframework.web.servlet.ModelAndView) returnValue;
        ModelAndView mav = (smav.isReference() ?
            new ModelAndView(smav.getViewName(), smav.getModelMap()) :
            new ModelAndView(smav.getView(), smav.getModelMap()));
        mav.getModelMap().mergeAttributes(implicitModel);
        return mav;
      }
      else if (returnValue instanceof Model) {
        return new ModelAndView().addAllObjects(implicitModel).addAllObjects(((Model) returnValue).asMap());
      }
      else if (returnValue instanceof Map) {
        return new ModelAndView().addAllObjects(implicitModel).addAllObjects((Map) returnValue);
      }
      else if (returnValue instanceof View) {
        return new ModelAndView(returnValue).addAllObjects(implicitModel);
      }
      else if (returnValue instanceof String) {
        return new ModelAndView((String) returnValue).addAllObjects(implicitModel);
      }
      else if (returnValue == null) {
        // Either returned null or was 'void' return.
        return null;
      }
      else if (!BeanUtils.isSimpleProperty(returnValue.getClass())) {
        // Assume a single model attribute...
        ModelAttribute attr = AnnotationUtils.findAnnotation(handlerMethod, ModelAttribute.class);
        String attrName = (attr != null ? attr.value() : "");
        ModelAndView mav = new ModelAndView().addAllObjects(implicitModel);
        if ("".equals(attrName)) {
          Class resolvedType = GenericTypeResolver.resolveReturnType(handlerMethod, handlerType);
          attrName = Conventions.getVariableNameForReturnType(handlerMethod, resolvedType, returnValue);
        }
        return mav.addObject(attrName, returnValue);
      }
      else {
        throw new IllegalArgumentException("Invalid handler method return value: " + returnValue);
      }
    }
View Full Code Here

    assertEquals(2, exceptionResolver.getOrder());
  }
 
  public void testDefaultErrorView() {
    exceptionResolver.setDefaultErrorView(DEFAULT_VIEW);
    ModelAndView mav = exceptionResolver.resolveException(request, response, handler1, genericException);
    assertEquals(DEFAULT_VIEW, mav.getViewName());
    assertEquals(genericException, mav.getModel().get(SimpleMappingExceptionResolver.DEFAULT_EXCEPTION_ATTRIBUTE));
  }
View Full Code Here

  }
 
  public void testDefaultErrorViewDifferentHandler() {
    exceptionResolver.setDefaultErrorView(DEFAULT_VIEW);
    exceptionResolver.setMappedHandlers(Collections.singleton(handler1));
    ModelAndView mav = exceptionResolver.resolveException(request, response, handler2, genericException);
    assertNull("Handler not mapped - ModelAndView should be null", mav);
  }
View Full Code Here

  }

  public void testDefaultErrorViewDifferentHandlerClass() {
    exceptionResolver.setDefaultErrorView(DEFAULT_VIEW);
    exceptionResolver.setMappedHandlerClasses(new Class[] {String.class});
    ModelAndView mav = exceptionResolver.resolveException(request, response, handler2, genericException);
    assertNull("Handler not mapped - ModelAndView should be null", mav);
  }
View Full Code Here

    ModelAndView mav = exceptionResolver.resolveException(request, response, handler2, genericException);
    assertNull("Handler not mapped - ModelAndView should be null", mav);
  }

  public void testNullDefaultErrorView() {
    ModelAndView mav = exceptionResolver.resolveException(request, response, handler1, genericException);
    assertNull("No default error view set - ModelAndView should be null", mav);
  }
View Full Code Here

  }

  public void testNullExceptionAttribute() {
    exceptionResolver.setDefaultErrorView(DEFAULT_VIEW);
    exceptionResolver.setExceptionAttribute(null);
    ModelAndView mav = exceptionResolver.resolveException(request, response, handler1, genericException);
    assertEquals(DEFAULT_VIEW, mav.getViewName());
    assertNull(mav.getModel().get(SimpleMappingExceptionResolver.DEFAULT_EXCEPTION_ATTRIBUTE));
  }
View Full Code Here

TOP

Related Classes of org.springframework.web.portlet.ModelAndView

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.