public class ViewNameMethodReturnValueHandler
extends java.lang.Object
implements org.springframework.web.method.support.HandlerMethodReturnValueHandler
void
and String
interpreting them
as view name reference. As of 4.2, it also handles general CharSequence
types, e.g. StringBuilder
or Groovy's GString
, as view names.
A null
return value, either due to a void
return type or
as the actual return value is left as-is allowing the configured
RequestToViewNameTranslator
to select a view name by convention.
A String return value can be interpreted in more than one ways depending
on the presence of annotations like @ModelAttribute
or
@ResponseBody
. Therefore this handler should be configured after
the handlers that support these annotations.
Constructor and Description |
---|
ViewNameMethodReturnValueHandler() |
Modifier and Type | Method and Description |
---|---|
java.lang.String[] |
getRedirectPatterns()
The configured redirect patterns, if any.
|
void |
handleReturnValue(java.lang.Object returnValue,
org.springframework.core.MethodParameter returnType,
org.springframework.web.method.support.ModelAndViewContainer mavContainer,
org.springframework.web.context.request.NativeWebRequest webRequest) |
protected boolean |
isRedirectViewName(java.lang.String viewName)
Whether the given view name is a redirect view reference.
|
void |
setRedirectPatterns(java.lang.String... redirectPatterns)
Configure one more simple patterns (as described in
PatternMatchUtils.simpleMatch(java.lang.String, java.lang.String) ) to use in order to recognize
custom redirect prefixes in addition to "redirect:". |
boolean |
supportsReturnType(org.springframework.core.MethodParameter returnType) |
public void setRedirectPatterns(@Nullable java.lang.String... redirectPatterns)
PatternMatchUtils.simpleMatch(java.lang.String, java.lang.String)
) to use in order to recognize
custom redirect prefixes in addition to "redirect:".
Note that simply configuring this property will not make a custom redirect prefix work. There must be a custom View that recognizes the prefix as well.
@Nullable public java.lang.String[] getRedirectPatterns()
public boolean supportsReturnType(org.springframework.core.MethodParameter returnType)
supportsReturnType
in interface org.springframework.web.method.support.HandlerMethodReturnValueHandler
public void handleReturnValue(@Nullable java.lang.Object returnValue, org.springframework.core.MethodParameter returnType, org.springframework.web.method.support.ModelAndViewContainer mavContainer, org.springframework.web.context.request.NativeWebRequest webRequest) throws java.lang.Exception
handleReturnValue
in interface org.springframework.web.method.support.HandlerMethodReturnValueHandler
java.lang.Exception
protected boolean isRedirectViewName(java.lang.String viewName)
viewName
- the view name to check, never null