List of usage examples for org.springframework.web.multipart MultipartResolver isMultipart
boolean isMultipart(HttpServletRequest request);
From source file:com.myhexin.filter.FileMultipartFilter.java
/** * //from ww w . j ava 2 s .c o m */ @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { MultipartResolver multipartResolver = lookupMultipartResolver(request); HttpServletRequest processedRequest = request; if (multipartResolver.isMultipart(processedRequest)) { if (logger.isDebugEnabled()) { logger.debug("Resolving multipart request [" + processedRequest.getRequestURI() + "] with MultipartFilter"); } processedRequest = multipartResolver.resolveMultipart(processedRequest); if (XSSSecurityConfig.IS_CHECK_HEADER || XSSSecurityConfig.IS_CHECK_PARAMETER) { if (isIlleageXssParam((MultipartHttpServletRequest) processedRequest)) {//?? processedRequest.getRequestDispatcher(XSSSecurityConfig.XSS_ERROR_PAGE_PATH).forward(request, response); return; } } if (FILE_FILTER_ISOPEN) { if (isIllegalFileSuffix((MultipartHttpServletRequest) processedRequest)) {//?? processedRequest.getRequestDispatcher(XSSSecurityConfig.XSS_ERROR_PAGE_PATH).forward(request, response); return; } } } else { if (logger.isDebugEnabled()) { logger.debug("Request [" + processedRequest.getRequestURI() + "] is not a multipart request"); } } try { filterChain.doFilter(processedRequest, response); } finally { if (processedRequest instanceof MultipartHttpServletRequest) { multipartResolver.cleanupMultipart((MultipartHttpServletRequest) processedRequest); } } }
From source file:com.github.zhanhb.ckfinder.connector.handlers.command.FileUploadCommand.java
/** * * @param request http request/*from w w w.j a v a 2 s. c o m*/ * @param param the parameter * @param context ckfinder context * @throws ConnectorException when error occurs */ private void fileUpload(HttpServletRequest request, FileUploadParameter param, CKFinderContext context) throws ConnectorException { MultipartResolver multipartResolver = StandardHolder.RESOLVER; try { boolean multipart = multipartResolver.isMultipart(request); if (multipart) { log.debug("prepare resolveMultipart"); MultipartHttpServletRequest resolveMultipart = multipartResolver.resolveMultipart(request); log.debug("finish resolveMultipart"); try { Collection<MultipartFile> parts = resolveMultipart.getFileMap().values(); for (MultipartFile part : parts) { Path path = getPath(param.getType().getPath(), param.getCurrentFolder()); param.setFileName(getFileItemName(part)); validateUploadItem(part, path, param, context); saveTemporaryFile(path, part, param, context); return; } } finally { multipartResolver.cleanupMultipart(resolveMultipart); } } param.throwException("No file provided in the request."); } catch (MultipartException e) { log.debug("catch MultipartException", e); param.throwException(ErrorCode.UPLOADED_TOO_BIG); } catch (IOException e) { log.debug("catch IOException", e); param.throwException(ErrorCode.ACCESS_DENIED); } }