Example usage for org.springframework.web.method.support HandlerMethodArgumentResolver resolveArgument

List of usage examples for org.springframework.web.method.support HandlerMethodArgumentResolver resolveArgument

Introduction

In this page you can find the example usage for org.springframework.web.method.support HandlerMethodArgumentResolver resolveArgument.

Prototype

@Nullable
Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer,
        NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws Exception;

Source Link

Document

Resolves a method parameter into an argument value from a given request.

Usage

From source file:net.kaczmarzyk.spring.data.jpa.web.SpecificationArgumentResolver.java

Object resolveArgument(MethodParameter param, ModelAndViewContainer mav, NativeWebRequest req,
        WebDataBinderFactory bider, HandlerMethodArgumentResolver recursiveCaller) throws Exception {

    for (HandlerMethodArgumentResolver delegate : delegates) {
        if (delegate != recursiveCaller && delegate.supportsParameter(param)) {
            return delegate.resolveArgument(param, mav, req, bider);
        }//from   w  w w.j  a  v  a  2s . co m
    }

    return null;
}

From source file:org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.java

/**
 * Iterate over registered {@link HandlerMethodArgumentResolver}s and invoke the one that supports it.
 * @throws IllegalStateException if no suitable {@link HandlerMethodArgumentResolver} is found.
 *///from  w  ww . j a  v a 2s  . c o m
@Override
@Nullable
public Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer,
        NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws Exception {

    HandlerMethodArgumentResolver resolver = getArgumentResolver(parameter);
    if (resolver == null) {
        throw new IllegalArgumentException(
                "Unknown parameter type [" + parameter.getParameterType().getName() + "]");
    }
    return resolver.resolveArgument(parameter, mavContainer, webRequest, binderFactory);
}