List of usage examples for org.springframework.web.bind ServletRequestParameterPropertyValues ServletRequestParameterPropertyValues
public ServletRequestParameterPropertyValues(ServletRequest request)
From source file:org.sakaiproject.metaobj.utils.mvc.impl.servlet.ServletRequestBeanDataBinder.java
public void bind(ServletRequest request) { // bind normal HTTP parameters bind(new ServletRequestParameterPropertyValues(request)); // bind multipart files if (request instanceof MultipartHttpServletRequest) { MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; bind(new MutablePropertyValues(multipartRequest.getFileMap())); }//from w ww . j av a2 s .c o m }
From source file:com.trenako.web.infrastructure.RangeRequestArgumentResolver.java
@Override public Object resolveArgument(MethodParameter param, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory webBinder) throws Exception { if (param.getParameterType().equals(RangeRequest.class)) { RangeRequest rangeRequest = new RangeRequest(this.failbackRequest.getSort(), this.failbackRequest.getSize(), null, null); ServletRequest request = (ServletRequest) webRequest.getNativeRequest(); PropertyValues propValues = new ServletRequestParameterPropertyValues(request); WebDataBinder wdb = webBinder.createBinder(webRequest, rangeRequest, ""); wdb.registerCustomEditor(Sort.class, new SortPropertyEditor(propValues)); wdb.bind(propValues);// w w w .j ava 2 s . co m if (rangeRequest.getRangeType() == RangeTypes.DATES) { parseSinceDate(rangeRequest); parseMaxDate(rangeRequest); } return rangeRequest; } return UNRESOLVED; }
From source file:org.broadleafcommerce.openadmin.server.service.artifact.upload.UploadAddOrUpdateController.java
@Override protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception { Map<String, String> model = new HashMap<String, String>(); String callbackName = null;/*from www .j av a2 s. c o m*/ try { MutablePropertyValues mpvs = new ServletRequestParameterPropertyValues(request); if (request instanceof MultipartRequest) { MultipartRequest multipartRequest = (MultipartRequest) request; bindMultipart(multipartRequest.getMultiFileMap(), mpvs); } //check for XSRF String csrfToken = (String) mpvs.getPropertyValue("csrfToken").getValue(); exploitProtectionService.compareToken(csrfToken); PersistencePackage persistencePackage = new PersistencePackage(); persistencePackage.setPersistencePerspective(new PersistencePerspective()); persistencePackage.setCsrfToken(csrfToken); String ceilingEntity = (String) mpvs.getPropertyValue("ceilingEntityFullyQualifiedClassname") .getValue(); callbackName = (String) mpvs.getPropertyValue("callbackName").getValue(); String operation = (String) mpvs.getPropertyValue("operation").getValue(); String customCriteria = (String) mpvs.getPropertyValue("customCriteria").getValue(); mpvs.removePropertyValue("ceilingEntityFullyQualifiedClassname"); mpvs.removePropertyValue("sandbox"); mpvs.removePropertyValue("callbackName"); mpvs.removePropertyValue("operation"); mpvs.removePropertyValue("customCriteria"); persistencePackage.setCeilingEntityFullyQualifiedClassname(ceilingEntity); persistencePackage.setCustomCriteria(new String[] { customCriteria }); Entity entity = new Entity(); persistencePackage.setEntity(entity); entity.setType(new String[] { ceilingEntity }); List<Property> propertyList = new ArrayList<Property>(); for (PropertyValue propertyValue : mpvs.getPropertyValues()) { if (propertyValue.getValue() instanceof MultipartFile) { MultipartFile file = (MultipartFile) propertyValue.getValue(); if (file.getSize() > maximumFileSizeInBytes) { throw new MaxUploadSizeExceededException(maximumFileSizeInBytes); } if (file.getOriginalFilename() == null || file.getOriginalFilename().indexOf(".") < 0) { throw new FileExtensionUnavailableException( "Unable to determine file extension for uploaded file. The filename for the uploaded file is: " + file.getOriginalFilename()); } Map<String, MultipartFile> fileMap = UploadedFile.getUpload(); fileMap.put(propertyValue.getName(), (MultipartFile) propertyValue.getValue()); UploadedFile.setUpload(fileMap); entity.setMultiPartAvailableOnThread(true); } else { Property property = new Property(); property.setName(propertyValue.getName()); property.setValue((String) propertyValue.getValue()); propertyList.add(property); } } entity.setProperties(propertyList.toArray(new Property[] {})); Entity result = null; if (operation.equals("add")) { result = dynamicEntityRemoteService.add(persistencePackage); } else if (operation.equals("update")) { result = dynamicEntityRemoteService.update(persistencePackage); } model.put("callbackName", callbackName); model.put("result", buildJSON(result)); return new ModelAndView("blUploadCompletedView", model); } catch (MaxUploadSizeExceededException e) { if (callbackName != null) { model.put("callbackName", callbackName); model.put("error", buildErrorJSON(e.getMessage())); } return new ModelAndView("blUploadCompletedView", model); } catch (FileExtensionUnavailableException e) { if (callbackName != null) { model.put("callbackName", callbackName); model.put("error", buildErrorJSON(e.getMessage())); } return new ModelAndView("blUploadCompletedView", model); } catch (Exception e) { e.printStackTrace(); if (callbackName != null) { model.put("callbackName", callbackName); model.put("error", buildErrorJSON(e.getMessage())); } return new ModelAndView("blUploadCompletedView", model); } finally { UploadedFile.remove(); } }
From source file:org.gbif.portal.web.filter.CriteriaUtil.java
/** * Retrieves a CriteriaDTO from this request. * @param request//from www . j av a 2 s . c om * @param filters the filters to use to populate the criteria * @return CriteriaDTO for the criteria in the supplied request */ public static CriteriaDTO getCriteria(HttpServletRequest request, List<FilterDTO> filters) throws Exception { if (logger.isDebugEnabled()) logger.debug("criteria string:" + request.getQueryString()); //find the number of criteria set in the request MutablePropertyValues mpvs = new ServletRequestParameterPropertyValues(request); PropertyValue[] pvs = mpvs.getPropertyValues(); Locale locale = RequestContextUtils.getLocale(request); return getCriteria(pvs, filters, locale); }