List of usage examples for org.springframework.web.context.request NativeWebRequest setAttribute
void setAttribute(String name, Object value, int scope);
From source file:org.impalaframework.extension.mvc.annotation.handler.ServletHandlerMethodInvoker.java
private ArgumentCollector[] assembleArgumentCollectors(Method handlerMethod, Object handler, NativeWebRequest webRequest, ExtendedModelMap implicitModel) { webRequest.setAttribute(WebAnnotationUtils.ARGUMENT_PENDING, Boolean.TRUE, WebRequest.SCOPE_REQUEST); ArgumentCollector[] collection;//from w w w .j a va 2 s . co m try { Class<?>[] parameterTypes = handlerMethod.getParameterTypes(); collection = new ArgumentCollector[parameterTypes.length]; for (int i = 0; i < parameterTypes.length; i++) { collection[i] = argumentCollectorHelper.getArgumentCollector(handlerMethod, webRequest, i); } argumentCollectors.put(handlerMethod, collection); } finally { webRequest.removeAttribute(WebAnnotationUtils.ARGUMENT_PENDING, WebRequest.SCOPE_REQUEST); } return collection; }
From source file:org.easit.core.controllers.twitter.TwitterProfileController.java
@RequestMapping(value = "/disconnect/twitter", method = RequestMethod.DELETE) public RedirectView removeConnection(NativeWebRequest request) { RedirectView redirect = connectController.removeConnection("twitter", connectionRepository.findPrimaryConnection(Twitter.class).getKey().getProviderUserId(), request); request.setAttribute("connectedToTwitter", connectionRepository.findConnections("twitter").size() > 0, WebRequest.SCOPE_SESSION);//w w w . j av a2 s. c o m request.setAttribute("connectedToAny", connectionRepository.findAllConnections().size() > 0, WebRequest.SCOPE_SESSION); return redirect; }
From source file:org.easit.core.controllers.facebook.FacebookProfileController.java
@RequestMapping(value = "/disconnect/facebook", method = RequestMethod.DELETE) public RedirectView removeConnection(NativeWebRequest request) { RedirectView redirect = connectController.removeConnection("facebook", connectionRepository.findPrimaryConnection(Facebook.class).getKey().getProviderUserId(), request); request.setAttribute("connectedToFacebook", connectionRepository.findConnections("facebook").size() > 0, WebRequest.SCOPE_SESSION);//from w ww .ja v a 2 s. c o m request.setAttribute("connectedToAny", connectionRepository.findAllConnections().size() > 0, WebRequest.SCOPE_SESSION); return redirect; }
From source file:org.springframework.cloud.aws.messaging.endpoint.AbstractNotificationMessageHandlerMethodArgumentResolver.java
@SuppressWarnings("unchecked") @Override//from w ww. j av a 2 s .c o m public Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception { Assert.notNull(parameter, "Parameter must not be null"); if (webRequest.getAttribute(NOTIFICATION_REQUEST_ATTRIBUTE_NAME, RequestAttributes.SCOPE_REQUEST) == null) { webRequest.setAttribute(NOTIFICATION_REQUEST_ATTRIBUTE_NAME, this.messageConverter.read(JsonNode.class, createInputMessage(webRequest)), RequestAttributes.SCOPE_REQUEST); } JsonNode content = (JsonNode) webRequest.getAttribute(NOTIFICATION_REQUEST_ATTRIBUTE_NAME, RequestAttributes.SCOPE_REQUEST); return doResolveArgumentFromNotificationMessage(content, createInputMessage(webRequest), parameter.getParameterType()); }
From source file:org.zht.framework.web.bind.resolver.FormModelMethodArgumentResolver.java
/** * Resolve the argument from the model or if not found instantiate it with * its default if it is available. The model attribute is then populated * with request values via data binding and optionally validated * if {@code @java.validation.Valid} is present on the argument. * * @throws org.springframework.validation.BindException * if data binding and validation result in an error * and the next method parameter is not of type {@link org.springframework.validation.Errors}. * @throws Exception if WebDataBinder initialization fails. *//*from w w w.jav a2s . c o m*/ public final Object resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest request, WebDataBinderFactory binderFactory) throws Exception { String name = parameter.getParameterAnnotation(FormModel.class).value(); Object target = (mavContainer.containsAttribute(name)) ? mavContainer.getModel().get(name) : createAttribute(name, parameter, binderFactory, request); WebDataBinder binder = binderFactory.createBinder(request, target, name); target = binder.getTarget(); if (target != null) { bindRequestParameters(mavContainer, binderFactory, binder, request, parameter); validateIfApplicable(binder, parameter); if (binder.getBindingResult().hasErrors()) { List<BindingResult> list = (List<BindingResult>) request .getAttribute(ValidateConstant.BINDING_RESULT_LIST_NAME, Integer.MAX_VALUE / 2 + 1); if (null == list) { list = new ArrayList<BindingResult>(); request.setAttribute(ValidateConstant.BINDING_RESULT_LIST_NAME, list, 0); } list.add(binder.getBindingResult()); request.setAttribute(ValidateConstant.BINDING_RESULT_HAS_ERROR, true, 0); // if (isBindExceptionRequired(binder, parameter)) { // throw new BindException(binder.getBindingResult()); // } } } target = binder.convertIfNecessary(binder.getTarget(), parameter.getParameterType()); mavContainer.addAttribute(name, target); return target; }