Example usage for org.springframework.web.context.request NativeWebRequest getParameter

List of usage examples for org.springframework.web.context.request NativeWebRequest getParameter

Introduction

In this page you can find the example usage for org.springframework.web.context.request NativeWebRequest getParameter.

Prototype

@Nullable
String getParameter(String paramName);

Source Link

Document

Return the request parameter of the given name, or null if none.

Usage

From source file:com.zhucode.web.quick.argresolver.ParaHandlerMethodArgumentResolver.java

@Override
public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer,
        NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {
    Para p = parameter.getParameterAnnotation(Para.class);
    Object val = webRequest.getParameter(p.name());
    if (!p.required()) {
        if (val == null) {
            val = p.defaultValue();
        }//from ww  w.ja  va 2  s.c om
    }
    if (ValueConstants.DEFAULT_NONE.equals(val)) {
        return null;
    }
    try {
        return converter.convertIfNecessary(val, parameter.getParameterType());
    } catch (TypeMismatchException e) {
        throw new ParamErrorexception(p.name(), e.getMessage());
    }
}

From source file:org.impalaframework.extension.mvc.annotation.collector.RequestParameterArgumentCollector.java

public Object getArgument(NativeWebRequest request, ExtendedModelMap implicitModel,
        TypeConverter typeConverter) {//from  w  ww.  ja v a 2s.  c  o m
    String value = annotation.value();
    boolean required = annotation.required();

    String parameter = request.getParameter(value);

    /*
    if (!StringUtils.hasText(parameter)) {
    parameter = annotation.defaultValue();
    }*/

    if (!StringUtils.hasText(parameter)) {
        if (required) {
            throw new IllegalArgumentException("Parameter '" + value + "' is required.");
        }
    }

    return typeConverter.convertIfNecessary(parameter, type);
}

From source file:fr.littlereddot.pocket.site.controller.account.ConnectAccountController.java

/**
 * Returns a RedirectView with the URL to redirect to after a connection is created or deleted.
 * Defaults to "/connect/{providerId}" relative to DispatcherServlet's path.
 * May be overridden to handle custom redirection needs.
 *
 * @param providerId the ID of the provider for which a connection was created or deleted.
 * @param request    the NativeWebRequest used to access the servlet path when constructing the redirect path.
 *///from  w  ww  . j  a  v  a  2 s .  c  om
protected RedirectView connectionStatusRedirect(String providerId, NativeWebRequest request) {
    String origin = request.getParameter("origin");
    String parameterSeparator = StringUtils.contains(origin, "?") ? "&" : "?";
    return new RedirectView(origin + parameterSeparator + providerId + "=true");
}

From source file:org.ngrinder.infra.spring.UserHandlerMethodArgumentResolver.java

@Override
public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer,
        NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception {
    User currentUser = getUserContext().getCurrentUser();

    String userParam = webRequest.getParameter("ownerId");
    if (StringUtils.isNotBlank(userParam) && currentUser.getRole().hasPermission(Permission.SWITCH_TO_ANYONE)) {
        return getUserService().getOne(userParam);
    }/*w  w  w .  j a  va2s . com*/

    // User want to do something through other User status and this
    // switchUser is other user Id
    String switchUser = null;
    Cookie[] cookies = getCookies(webRequest);
    if (cookies != null) {
        for (Cookie cookie : cookies) {
            if ("switchUser".equals(cookie.getName()) && cookie.getMaxAge() != 0) {
                switchUser = cookie.getValue();
            }
        }
    }
    // Let this can be done with parameter as well.
    switchUser = StringUtils.defaultIfBlank(webRequest.getParameter("switchUser"), switchUser);

    if (currentUser.getUserId().equals(switchUser)) {
        currentUser.setOwnerUser(null);
    } else if (StringUtils.isNotEmpty(switchUser)) {
        User ownerUser = getUserService().getOne(switchUser);
        // CurrentUser should remember whose status he used
        if (currentUser.getRole().hasPermission(Permission.SWITCH_TO_ANYONE)
                || (ownerUser.getFollowers() != null && ownerUser.getFollowers().contains(currentUser))) {
            currentUser.setOwnerUser(ownerUser);
            return ownerUser;
        }
    } else if (StringUtils.isEmpty(switchUser)) {
        currentUser.setOwnerUser(null);
    }

    return currentUser.getFactualUser();
}

From source file:org.secsm.ArgumentResolver.java

public Object resolveArgument(MethodParameter methodParam, NativeWebRequest request) throws Exception {

    if (methodParam.getParameterName().equals("user")) {

        User user = new User();

        if (request.getParameter("uidx") != null) {
            user.setUidx(Integer.parseInt(request.getParameter("uidx")));
        }//from w ww.  j a va  2  s.  c om

        user.setUser_id(request.getParameter("user_id"));
        user.setName(request.getParameter("name"));
        user.setPhone(request.getParameter("phone"));
        user.setRegitid(request.getParameter("regitid"));

        System.out.println(request.toString());
        System.out.println(">>" + user.toString());
        return user;
    } else if (methodParam.getParameterName().equals("guide")) {

        Guide guide = new Guide();

        if (request.getParameter("idx") != null)
            guide.setIdx(Integer.parseInt(request.getParameter("idx")));

        guide.setCreator(request.getParameter("creator"));
        guide.setDate(request.getParameter("date"));
        guide.setGidx(request.getParameter("gidx"));
        guide.setName(request.getParameter("name"));
        guide.setImage(request.getParameter("image"));
        guide.setOs(request.getParameter("os"));
        guide.setDevice(request.getParameter("device"));

        guide.setDescription(request.getParameter("description"));

        if (request.getParameter("width") != null)
            guide.setWidth(Integer.parseInt(request.getParameter("width")));

        if (request.getParameter("height") != null)
            guide.setHeight(Integer.parseInt(request.getParameter("height")));

        if (request.getParameter("download") != null)
            guide.setDownload(Integer.parseInt(request.getParameter("download")));

        if (request.getParameter("limit") != null) {
            guide.setLimit(Integer.parseInt(request.getParameter("limit")));
        }
        System.out.println(request.toString());
        System.out.println(">>" + guide.toString());
        return guide;

    } else if (methodParam.getParameterName().equals("req")) {
        Request req = new Request();

        if (request.getParameter("rid") != null)
            req.setRid(Integer.parseInt(request.getParameter("rid")));

        req.setUser_id(request.getParameter("user_id"));

        req.setTitle(request.getParameter("title"));
        req.setBody(request.getParameter("body"));

        if (request.getParameter("accept") != null)
            req.setAccept(Integer.parseInt(request.getParameter("accept")));

        req.setGidx(request.getParameter("gidx"));

        System.out.println(req.toString());
        System.out.println(">>" + req.toString());

        return req;

    } else if (methodParam.getParameterName().equals("filePush")) {
        FilePush filePush = new FilePush();

        if (request.getParameter("fidx") != null)
            filePush.setFidx(Integer.parseInt(request.getParameter("fidx")));

        filePush.setSender(request.getParameter("sender"));
        filePush.setReceiver(request.getParameter("receiver"));
        filePush.setGidx(request.getParameter("gidx"));
        filePush.setTime(request.getParameter("time"));

        System.out.println(filePush.toString());
        System.out.println(">>" + filePush.toString());

    }
    return UNRESOLVED;
}

From source file:com.sws.platform.mobile.common.json.RequestJsonParamMethodArgumentResolver.java

@Override
protected Object resolveName(String name, MethodParameter parameter, NativeWebRequest webRequest)
        throws Exception {
    String[] paramValues = webRequest.getParameterValues(name);
    Class<?> paramType = parameter.getParameterType();
    if (paramValues == null) {
        return null;
    }//from   www .j  a  v  a2s  .  co m
    //?json
    String data = webRequest.getParameter(name);
    if (StringUtil.isNullOrEmptyOrWhiteSpace(data)) {
        return null;
    }

    //        try {
    //        if (paramValues.length == 1) {
    //            String text = paramValues[0];
    Type type = parameter.getGenericParameterType();

    //                if (MapWapper.class.isAssignableFrom(paramType)) {
    //                    MapWapper<?, ?> jsonMap = (MapWapper<?, ?>) paramType.newInstance();
    //
    //                    MapType mapType = (MapType) getJavaType(HashMap.class);
    //
    //                    if (type instanceof ParameterizedType) {
    //                        mapType = (MapType) mapType.narrowKey((Class<?>) ((ParameterizedType) type).getActualTypeArguments()[0]);
    //                        mapType = (MapType) mapType.narrowContentsBy((Class<?>) ((ParameterizedType) type).getActualTypeArguments()[1]);
    //                    }
    //                    jsonMap.setInnerMap(mapper.<Map>readValue(text, mapType));
    //                    return jsonMap;
    //                }
    //
    //                JavaType javaType = getJavaType(paramType);
    //
    //
    if (Collection.class.isAssignableFrom(paramType)) {
        //                    javaType = javaType.narrowContentsBy((Class<?>) ((ParameterizedType) type).getActualTypeArguments()[0]);
        return JSONArray.parseArray(paramValues[0],
                (Class<?>) ((ParameterizedType) type).getActualTypeArguments()[0]);
    }

    return JSON.parseObject(paramValues[0], type, this.fastJsonConfig.getFeatures());
    //        }

    //        } catch (Exception e) {
    //            throw new JSONException("Could not read request json parameter", e);
    //        }

    //        throw new UnsupportedOperationException(
    //                "too many request json parameter '" + name + "' for method parameter type [" + paramType + "], only support one json parameter");
}

From source file:com.fengduo.bee.commons.component.FormModelMethodArgumentResolver.java

/**
 * Obtain a value from the request that may be used to instantiate the model attribute through type conversion from
 * String to the target type./*ww  w .j  av a  2s  .  c  o  m*/
 * <p>
 * The default implementation looks for the attribute name to match a URI variable first and then a request
 * parameter.
 * 
 * @param attributeName the model attribute name
 * @param request the current request
 * @return the request value to try to convert or {@code null}
 */
protected String getRequestValueForAttribute(String attributeName, NativeWebRequest request) {
    Map<String, String> variables = getUriTemplateVariables(request);
    if (StringUtils.hasText(variables.get(attributeName))) {
        return variables.get(attributeName);
    } else if (StringUtils.hasText(request.getParameter(attributeName))) {
        return request.getParameter(attributeName);
    } else {
        return null;
    }
}

From source file:com.fengduo.bee.commons.component.FormModelMethodArgumentResolver.java

/**
 * {@inheritDoc}/*from  ww w .ja va 2s.c  om*/
 * <p>
 * Downcast {@link org.springframework.web.bind.WebDataBinder} to
 * {@link org.springframework.web.bind.ServletRequestDataBinder} before binding.
 * 
 * @throws Exception
 * @see org.springframework.web.servlet.mvc.method.annotation.ServletRequestDataBinderFactory
 */
protected void bindRequestParameters(ModelAndViewContainer mavContainer, WebDataBinderFactory binderFactory,
        WebDataBinder binder, NativeWebRequest request, MethodParameter parameter) throws Exception {

    // Map<String, Boolean> hasProcessedPrefixMap = new HashMap<String, Boolean>();
    //
    // Class<?> targetType = binder.getTarget().getClass();
    // WebDataBinder simpleBinder = binderFactory.createBinder(request, null, null);
    Collection target = (Collection) binder.getTarget();

    Class<?>[] paramTypes = parameter.getMethod().getParameterTypes();
    Method method = parameter.getMethod();
    Object[] args = new Object[paramTypes.length];
    Map<String, Object> argMap = new HashMap<String, Object>(args.length);
    MapBindingResult errors = new MapBindingResult(argMap, "");
    ParameterNameDiscoverer parameterNameDiscoverer = new LocalVariableTableParameterNameDiscoverer();

    for (int i = 0; i < paramTypes.length; i++) {
        Class<?> paramType = paramTypes[i];

        MethodParameter methodParam = new MethodParameter(method, i);
        methodParam.initParameterNameDiscovery(parameterNameDiscoverer);
        String paramName = methodParam.getParameterName();
        // ??
        if (BeanUtils.isSimpleProperty(paramType)) {
            SimpleTypeConverter converter = new SimpleTypeConverter();
            Object value;
            // ?
            if (paramType.isArray()) {
                value = request.getParameterValues(paramName);
            } else {
                value = request.getParameter(paramName);
            }
            try {
                args[i] = converter.convertIfNecessary(value, paramType, methodParam);
            } catch (TypeMismatchException e) {
                errors.addError(new FieldError(paramName, paramName, e.getMessage()));
            }
        } else {
            // ???POJO
            if (paramType.isArray()) {
                ObjectArrayDataBinder binders = new ObjectArrayDataBinder(paramType.getComponentType(),
                        paramName);
                target.addAll(ArrayUtils.arrayConvert(binders.bind(request)));
            }
        }
    }

    // if (Collection.class.isAssignableFrom(targetType)) {// bind collection or array
    //
    // Type type = parameter.getGenericParameterType();
    // Class<?> componentType = Object.class;
    //
    // Collection target = (Collection) binder.getTarget();
    //
    // List targetList = new ArrayList(target);
    //
    // if (type instanceof ParameterizedType) {
    // componentType = (Class<?>) ((ParameterizedType) type).getActualTypeArguments()[0];
    // }
    //
    // if (parameter.getParameterType().isArray()) {
    // componentType = parameter.getParameterType().getComponentType();
    // }
    //
    // for (Object key : servletRequest.getParameterMap().keySet()) {
    // String prefixName = getPrefixName((String) key);
    //
    // // ?prefix ??
    // if (hasProcessedPrefixMap.containsKey(prefixName)) {
    // continue;
    // } else {
    // hasProcessedPrefixMap.put(prefixName, Boolean.TRUE);
    // }
    //
    // if (isSimpleComponent(prefixName)) { // bind simple type
    // Map<String, Object> paramValues = WebUtils.getParametersStartingWith(servletRequest, prefixName);
    // Matcher matcher = INDEX_PATTERN.matcher(prefixName);
    // if (!matcher.matches()) { // ? array=1&array=2
    // for (Object value : paramValues.values()) {
    // targetList.add(simpleBinder.convertIfNecessary(value, componentType));
    // }
    // } else { // ? array[0]=1&array[1]=2
    // int index = Integer.valueOf(matcher.group(1));
    //
    // if (targetList.size() <= index) {
    // growCollectionIfNecessary(targetList, index);
    // }
    // targetList.set(index, simpleBinder.convertIfNecessary(paramValues.values(), componentType));
    // }
    // } else { // ? votes[1].title=votes[1].title&votes[0].title=votes[0].title&votes[0].id=0&votes[1].id=1
    // Object component = null;
    // // ? ?????
    // Matcher matcher = INDEX_PATTERN.matcher(prefixName);
    // if (!matcher.matches()) {
    // throw new IllegalArgumentException("bind collection error, need integer index, key:" + key);
    // }
    // int index = Integer.valueOf(matcher.group(1));
    // if (targetList.size() <= index) {
    // growCollectionIfNecessary(targetList, index);
    // }
    // Iterator iterator = targetList.iterator();
    // for (int i = 0; i < index; i++) {
    // iterator.next();
    // }
    // component = iterator.next();
    //
    // if (component == null) {
    // component = BeanUtils.instantiate(componentType);
    // }
    //
    // WebDataBinder componentBinder = binderFactory.createBinder(request, component, null);
    // component = componentBinder.getTarget();
    //
    // if (component != null) {
    // ServletRequestParameterPropertyValues pvs = new ServletRequestParameterPropertyValues(
    // servletRequest,
    // prefixName,
    // "");
    // componentBinder.bind(pvs);
    // validateIfApplicable(componentBinder, parameter);
    // if (componentBinder.getBindingResult().hasErrors()) {
    // if (isBindExceptionRequired(componentBinder, parameter)) {
    // throw new BindException(componentBinder.getBindingResult());
    // }
    // }
    // targetList.set(index, component);
    // }
    // }
    // target.clear();
    // target.addAll(targetList);
    // }
    // } else if (MapWapper.class.isAssignableFrom(targetType)) {
    //
    // Type type = parameter.getGenericParameterType();
    // Class<?> keyType = Object.class;
    // Class<?> valueType = Object.class;
    //
    // if (type instanceof ParameterizedType) {
    // keyType = (Class<?>) ((ParameterizedType) type).getActualTypeArguments()[0];
    // valueType = (Class<?>) ((ParameterizedType) type).getActualTypeArguments()[1];
    // }
    //
    // MapWapper mapWapper = ((MapWapper) binder.getTarget());
    // Map target = mapWapper.getInnerMap();
    // if (target == null) {
    // target = new HashMap();
    // mapWapper.setInnerMap(target);
    // }
    //
    // for (Object key : servletRequest.getParameterMap().keySet()) {
    // String prefixName = getPrefixName((String) key);
    //
    // // ?prefix ??
    // if (hasProcessedPrefixMap.containsKey(prefixName)) {
    // continue;
    // } else {
    // hasProcessedPrefixMap.put(prefixName, Boolean.TRUE);
    // }
    //
    // Object keyValue = simpleBinder.convertIfNecessary(getMapKey(prefixName), keyType);
    //
    // if (isSimpleComponent(prefixName)) { // bind simple type
    // Map<String, Object> paramValues = WebUtils.getParametersStartingWith(servletRequest, prefixName);
    //
    // for (Object value : paramValues.values()) {
    // target.put(keyValue, simpleBinder.convertIfNecessary(value, valueType));
    // }
    // } else {
    //
    // Object component = target.get(keyValue);
    // if (component == null) {
    // component = BeanUtils.instantiate(valueType);
    // }
    //
    // WebDataBinder componentBinder = binderFactory.createBinder(request, component, null);
    // component = componentBinder.getTarget();
    //
    // if (component != null) {
    // ServletRequestParameterPropertyValues pvs = new ServletRequestParameterPropertyValues(
    // servletRequest,
    // prefixName,
    // "");
    // componentBinder.bind(pvs);
    //
    // validateComponent(componentBinder, parameter);
    //
    // target.put(keyValue, component);
    // }
    // }
    // }
    // } else {// bind model
    // ServletRequestDataBinder servletBinder = (ServletRequestDataBinder) binder;
    // servletBinder.bind(servletRequest);
    // }
}

From source file:org.fao.geonet.services.resources.handlers.DefaultResourceDownloadHandler.java

private String getParam(NativeWebRequest request, String paramName, String defaultVal) {
    String val = request.getParameter(paramName);
    if (val == null) {
        return defaultVal;
    }//from  w w  w  . j a  va  2s .  c om
    return val;
}

From source file:org.springframework.social.connect.web.ConnectSupport.java

/**
 * Complete the connection to the OAuth1 provider.
 * @param connectionFactory the service provider's connection factory e.g. FacebookConnectionFactory
 * @param request the current web request
 * @return a new connection to the service provider
 *//*ww  w.  j  ava2s.  c o m*/
public Connection<?> completeConnection(OAuth1ConnectionFactory<?> connectionFactory,
        NativeWebRequest request) {
    String verifier = request.getParameter("oauth_verifier");
    AuthorizedRequestToken requestToken = new AuthorizedRequestToken(extractCachedRequestToken(request),
            verifier);
    OAuthToken accessToken = connectionFactory.getOAuthOperations().exchangeForAccessToken(requestToken, null);
    return connectionFactory.createConnection(accessToken);
}