Class InitBinderDataBinderFactory
- java.lang.Object
- org.springframework.web.bind.support.DefaultDataBinderFactory
- org.springframework.web.method.annotation.InitBinderDataBinderFactory
- All Implemented Interfaces:
WebDataBinderFactory
- Direct Known Subclasses:
ServletRequestDataBinderFactory
public class InitBinderDataBinderFactory extends DefaultDataBinderFactory
Adds initialization to a WebDataBinder via@InitBindermethods.- Since:
- 3.1
- Author:
- Rossen Stoyanchev
Constructor Summary
Constructors Constructor Description InitBinderDataBinderFactory(List<InvocableHandlerMethod> binderMethods, WebBindingInitializer initializer)Create a new InitBinderDataBinderFactory instance.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidinitBinder(WebDataBinder dataBinder, NativeWebRequest request)Initialize a WebDataBinder with@InitBindermethods.protected booleanisBinderMethodApplicable(HandlerMethod initBinderMethod, WebDataBinder dataBinder)Determine whether the given@InitBindermethod should be used to initialize the givenWebDataBinderinstance.Methods inherited from class org.springframework.web.bind.support.DefaultDataBinderFactory
createBinder, createBinderInstance
Constructor Detail
InitBinderDataBinderFactory
public InitBinderDataBinderFactory(List<InvocableHandlerMethod> binderMethods, WebBindingInitializer initializer)
Create a new InitBinderDataBinderFactory instance.- Parameters:
binderMethods-@InitBindermethodsinitializer- for global data binder initialization
Method Detail
initBinder
public void initBinder(WebDataBinder dataBinder, NativeWebRequest request) throws Exception
Initialize a WebDataBinder with@InitBindermethods.If the
@InitBinderannotation specifies attributes names, it is invoked only if the names include the target object name.- Overrides:
initBinderin classDefaultDataBinderFactory- Parameters:
dataBinder- the data binder instance to customizerequest- the current request- Throws:
Exception- if one of the invoked @InitBindermethods fails- See Also:
isBinderMethodApplicable(org.springframework.web.method.HandlerMethod, org.springframework.web.bind.WebDataBinder)
isBinderMethodApplicable
protected boolean isBinderMethodApplicable(HandlerMethod initBinderMethod, WebDataBinder dataBinder)
Determine whether the given@InitBindermethod should be used to initialize the givenWebDataBinderinstance. By default we check the specified attribute names in the annotation value, if any.