List of usage examples for org.springframework.web.util WebUtils getNativeRequest
@SuppressWarnings("unchecked") @Nullable public static <T> T getNativeRequest(ServletRequest request, @Nullable Class<T> requiredType)
From source file:sample.SpringMultipartParser.java
public void parse(HttpServletRequest request, String saveDir) throws IOException { multipartRequest = WebUtils.getNativeRequest(request, MultipartHttpServletRequest.class); if (multipartRequest == null) { LOG.warn("Unable to MultipartHttpServletRequest"); errors.add("Unable to MultipartHttpServletRequest"); return;//from www .ja v a2s. c om } multipartMap = multipartRequest.getMultiFileMap(); for (Entry<String, List<MultipartFile>> fileEntry : multipartMap.entrySet()) { String fieldName = fileEntry.getKey(); for (MultipartFile file : fileEntry.getValue()) { File temp = File.createTempFile("upload", ".dat"); file.transferTo(temp); multiFileMap.add(fieldName, temp); } } }
From source file:org.hdiv.web.multipart.HdivStandardServletMultipartResolver.java
@Override public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException { MultipartHttpServletRequest multipartHttpServletRequest = WebUtils.getNativeRequest(request, MultipartHttpServletRequest.class); if (multipartHttpServletRequest != null) { // Use MultipartHttpServletRequestWrapper to maintain MultipartHttpServletRequest in first place // and obtains parameter values from RequestWrapper, with real values with confidentiality activated return new MultipartHttpServletRequestWrapper(request, multipartHttpServletRequest); }/*from w ww.j a v a 2 s . co m*/ // If MultipartHttpServletRequest instance is not present, parse multipart request return super.resolveMultipart(request); }
From source file:org.hdiv.web.multipart.HdivCommonsMultipartResolver.java
@Override public MultipartHttpServletRequest resolveMultipart(HttpServletRequest request) throws MultipartException { HdivMultipartException multipartException = (HdivMultipartException) request .getAttribute(IMultipartConfig.FILEUPLOAD_EXCEPTION); if (multipartException != null) { Exception orig = multipartException.getOriginal(); if (orig instanceof MultipartException) { throw (MultipartException) orig; } else {/*from ww w. jav a 2s. c o m*/ throw new MultipartException("Could not parse multipart servlet request", orig); } } // If MultipartHttpServletRequest instance is present in request wrappers path, don't call to MultipartResolver MultipartHttpServletRequest original = WebUtils.getNativeRequest(request, MultipartHttpServletRequest.class); if (original != null) { // Use MultipartHttpServletRequestWrapper to maintain MultipartHttpServletRequest in first place // and obtains parameter values from RequestWrapper, with real values with confidentiality activated RequestWrapper requestWrapper = WebUtils.getNativeRequest(request, RequestWrapper.class); return new MultipartHttpServletRequestWrapper(request, requestWrapper, original); } // If MultipartHttpServletRequest instance is not present, parse multipart request return super.resolveMultipart(request); }
From source file:net.paoding.rose.web.paramresolver.ServletRequestDataBinder.java
/** * Bind the parameters of the given request to this binder's target, also * binding multipart files in case of a multipart request. * <p>/*from w ww .j a v a2s .c o m*/ * This call can create field errors, representing basic binding errors like * a required field (code "required"), or type mismatch between value and * bean property (code "typeMismatch"). * <p> * Multipart files are bound via their parameter name, just like normal HTTP * parameters: i.e. "uploadedFile" to an "uploadedFile" bean property, * invoking a "setUploadedFile" setter method. * <p> * The type of the target property for a multipart file can be * MultipartFile, byte[], or String. The latter two receive the contents of * the uploaded file; all metadata like original file name, content type, * etc are lost in those cases. * * @param request * request with parameters to bind (can be multipart) * @see org.springframework.web.multipart.MultipartHttpServletRequest * @see org.springframework.web.multipart.MultipartFile * @see #bindMultipartFiles * @see #bind(org.springframework.beans.PropertyValues) */ public void bind(ServletRequest request) { MutablePropertyValues mpvs = new MutablePropertyValues(WebUtils.getParametersStartingWith(request, prefix)); MultipartRequest multipartRequest = WebUtils.getNativeRequest(request, MultipartRequest.class); if (multipartRequest != null) { bindMultipart(multipartRequest.getMultiFileMap(), mpvs); } addBindValues(mpvs, request); doBind(mpvs); }
From source file:org.zht.framework.web.bind.resolver.FormModelMethodArgumentResolver.java
private ServletRequest prepareServletRequest(Object target, NativeWebRequest request, MethodParameter parameter) {// w w w.j ava 2 s . c o m String modelPrefixName = parameter.getParameterAnnotation(FormModel.class).value(); HttpServletRequest nativeRequest = (HttpServletRequest) request.getNativeRequest(); MultipartRequest multipartRequest = WebUtils.getNativeRequest(nativeRequest, MultipartRequest.class); MockHttpServletRequest mockRequest = null; if (multipartRequest != null) { MockMultipartHttpServletRequest mockMultipartRequest = new MockMultipartHttpServletRequest(); for (MultipartFile file : multipartRequest.getFileMap().values()) { mockMultipartRequest.addFile( new MultipartFileWrapper(getNewParameterName(file.getName(), modelPrefixName), file)); } mockRequest = mockMultipartRequest; } else { mockRequest = new MockHttpServletRequest(); } for (Entry<String, String> entry : getUriTemplateVariables(request).entrySet()) { String parameterName = entry.getKey(); String value = entry.getValue(); if (isFormModelAttribute(parameterName, modelPrefixName)) { mockRequest.setParameter(getNewParameterName(parameterName, modelPrefixName), value); } } for (Object parameterEntry : nativeRequest.getParameterMap().entrySet()) { Entry<String, String[]> entry = (Entry<String, String[]>) parameterEntry; String parameterName = entry.getKey(); String[] value = entry.getValue(); if (isFormModelAttribute(parameterName, modelPrefixName)) { mockRequest.setParameter(getNewParameterName(parameterName, modelPrefixName), value); } } return mockRequest; }
From source file:com.mmj.app.common.component.FormModelMethodArgumentResolver.java
private ServletRequest prepareServletRequest(Object target, NativeWebRequest request, MethodParameter parameter) {// w w w. j a v a 2 s . c o m String modelPrefixName = parameter.getParameterAnnotation(FormBean.class).value(); HttpServletRequest nativeRequest = (HttpServletRequest) request.getNativeRequest(); MultipartRequest multipartRequest = WebUtils.getNativeRequest(nativeRequest, MultipartRequest.class); MockHttpServletRequest mockRequest = null; if (multipartRequest != null) { MockMultipartHttpServletRequest mockMultipartRequest = new MockMultipartHttpServletRequest(); for (MultipartFile file : multipartRequest.getFileMap().values()) { mockMultipartRequest.addFile( new MultipartFileWrapper(getNewParameterName(file.getName(), modelPrefixName), file)); } mockRequest = mockMultipartRequest; } else { mockRequest = new MockHttpServletRequest(); } for (Entry<String, String> entry : getUriTemplateVariables(request).entrySet()) { String parameterName = entry.getKey(); String value = entry.getValue(); if (isFormModelAttribute(parameterName, modelPrefixName)) { mockRequest.setParameter(getNewParameterName(parameterName, modelPrefixName), value); } } for (Object parameterEntry : nativeRequest.getParameterMap().entrySet()) { Entry<String, String[]> entry = (Entry<String, String[]>) parameterEntry; String parameterName = entry.getKey(); String[] value = entry.getValue(); if (isFormModelAttribute(parameterName, modelPrefixName)) { mockRequest.setParameter(getNewParameterName(parameterName, modelPrefixName), value); } } return mockRequest; }
From source file:com.fengduo.bee.commons.component.FormModelMethodArgumentResolver.java
@SuppressWarnings("unused") private ServletRequest prepareServletRequest(Object target, NativeWebRequest request, MethodParameter parameter) {/*from w ww . j a va2 s. c o m*/ String modelPrefixName = parameter.getParameterAnnotation(FormBean.class).value(); HttpServletRequest nativeRequest = (HttpServletRequest) request.getNativeRequest(); MultipartRequest multipartRequest = WebUtils.getNativeRequest(nativeRequest, MultipartRequest.class); MockHttpServletRequest mockRequest = null; if (multipartRequest != null) { MockMultipartHttpServletRequest mockMultipartRequest = new MockMultipartHttpServletRequest(); for (MultipartFile file : multipartRequest.getFileMap().values()) { mockMultipartRequest.addFile( new MultipartFileWrapper(getNewParameterName(file.getName(), modelPrefixName), file)); } mockRequest = mockMultipartRequest; } else { mockRequest = new MockHttpServletRequest(); } for (Entry<String, String> entry : getUriTemplateVariables(request).entrySet()) { String parameterName = entry.getKey(); String value = entry.getValue(); if (isFormModelAttribute(parameterName, modelPrefixName)) { mockRequest.setParameter(getNewParameterName(parameterName, modelPrefixName), value); } } for (Object parameterEntry : nativeRequest.getParameterMap().entrySet()) { Entry<String, String[]> entry = (Entry<String, String[]>) parameterEntry; String parameterName = entry.getKey(); String[] value = entry.getValue(); if (isFormModelAttribute(parameterName, modelPrefixName)) { mockRequest.setParameter(getNewParameterName(parameterName, modelPrefixName), value); } } return mockRequest; }
From source file:org.hdiv.filter.ValidatorHelperRequest.java
/** * Adds one parameter to the request. Since the HttpServletRequest object's parameters are unchanged according to * the Servlet specification, the instance of request should be passed as a parameter of type RequestWrapper. * /* w w w.j a va2s.c o m*/ * @param request * HttpServletRequest to validate * @param name * new parameter name * @param value * new parameter value * @throws HDIVException * if the request object is not of type RequestWrapper */ protected void addParameterToRequest(HttpServletRequest request, String name, Object value) { RequestWrapper wrapper = null; if (request instanceof RequestWrapper) { wrapper = (RequestWrapper) request; } else { wrapper = (RequestWrapper) WebUtils.getNativeRequest(request, RequestWrapper.class); } if (wrapper != null) { wrapper.addParameter(name, value); } else { String errorMessage = HDIVUtil.getMessage("helper.notwrapper"); throw new HDIVException(errorMessage); } }
From source file:com.mystudy.source.spring.mvc.DispatcherServlet.java
/** * Clean up any resources used by the given multipart request (if any). * @param servletRequest current HTTP request * @see MultipartResolver#cleanupMultipart */// w ww .j av a 2 s . c o m protected void cleanupMultipart(HttpServletRequest servletRequest) { MultipartHttpServletRequest req = WebUtils.getNativeRequest(servletRequest, MultipartHttpServletRequest.class); if (req != null) { this.multipartResolver.cleanupMultipart(req); } }