Example usage for org.springframework.web.bind ServletRequestParameterPropertyValues ServletRequestParameterPropertyValues

List of usage examples for org.springframework.web.bind ServletRequestParameterPropertyValues ServletRequestParameterPropertyValues

Introduction

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

Prototype

public ServletRequestParameterPropertyValues(ServletRequest request) 

Source Link

Document

Create new ServletRequestPropertyValues using no prefix (and hence, no prefix separator).

Usage

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);
}