Example usage for org.springframework.web.bind WebDataBinder setFieldMarkerPrefix

List of usage examples for org.springframework.web.bind WebDataBinder setFieldMarkerPrefix

Introduction

In this page you can find the example usage for org.springframework.web.bind WebDataBinder setFieldMarkerPrefix.

Prototype

public void setFieldMarkerPrefix(@Nullable String fieldMarkerPrefix) 

Source Link

Document

Specify a prefix that can be used for parameters that mark potentially empty fields, having "prefix + field" as name.

Usage

From source file:de.iew.web.isc.spring.IscRequestMethodArgumentResolver.java

public Object resolveArgument(MethodParameter methodParameter, ModelAndViewContainer modelAndViewContainer,
        NativeWebRequest nativeWebRequest, WebDataBinderFactory webDataBinderFactory) throws Exception {
    DSRequest dsRequest = new DSRequest();
    WebDataBinder binder = webDataBinderFactory.createBinder(nativeWebRequest, dsRequest, "dsRequest");
    binder.setFieldMarkerPrefix("__");

    // Man kann noch eigene Property Editoren konfigurieren
    //binder.registerCustomEditor();

    if (binder instanceof ServletRequestDataBinder) {
        /*//from  w  w w  . j  av  a  2 s.c om
        @TODO
                
        Wir machen es uns etwas leicht. Unser DSRequest Objekt muss
        eigentlich nur die isc_-Eigenschaften kennen. Dort ist auch isc_metaDataPreifx
        konfiguriert. Anhand dieses Prefix mssen wir die anderen Eiegenschaften auflsen.
         */
        ServletRequestDataBinder servletRequestDataBinder = (ServletRequestDataBinder) binder;
        HttpServletRequest request = (HttpServletRequest) nativeWebRequest.getNativeRequest();

        servletRequestDataBinder.bind(request);

        BindingResult bindingResult = binder.getBindingResult();
        modelAndViewContainer.addAttribute(BindingResult.MODEL_KEY_PREFIX + "dsRequest", bindingResult);

        return dsRequest;
    } else {
        throw new UnsupportedOperationException(
                "Using " + binder.getClass() + " WebDataBinder is not supported.");
    }

}