/* * Copyright 2002-2005 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.springframework.web.portlet; import javax.portlet.PortletException; /** * Exception to be thrown on error conditions that should forward * to a specific view with a specific model. * * <p>Can be thrown at any time during handler processing. * This includes any template methods of pre-built controllers. * For example, a form controller might abort to a specific error page * if certain parameters do not allow to proceed with the normal workflow. * * @author Juergen Hoeller * @since 2.0 */ public class ModelAndViewDefiningException extends PortletException { private ModelAndView modelAndView; /** * Create new ModelAndViewDefiningException with the given ModelAndView, * typically representing a specific error page. * @param modelAndView ModelAndView with view to forward to and model to expose */ public ModelAndViewDefiningException(ModelAndView modelAndView) { if (modelAndView == null) { throw new IllegalArgumentException("modelAndView must not be null in ModelAndViewDefiningException"); } this.modelAndView = modelAndView; } /** * Return the ModelAndView that this exception contains for forwarding to. */ public ModelAndView getModelAndView() { return modelAndView; } }