List of usage examples for org.springframework.web.multipart MultipartHttpServletRequest setAttribute
public void setAttribute(String name, Object o);
From source file:com.jaspersoft.jasperserver.war.MultipartRequestWrapperFilter.java
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { // unwrap multipart request try {//from ww w. ja va 2s .c om if (multipartResolver.isMultipart((HttpServletRequest) request) && request.getContentLength() > 0) { MultipartHttpServletRequest multipartHttpServletRequest = multipartResolver .resolveMultipart((HttpServletRequest) request); request = new MultipartHttpServletRequestWrapper(multipartHttpServletRequest); // support for file resource and olap schema wizards { MultipartHttpServletRequest mreq = (MultipartHttpServletRequest) request; Iterator iterator = mreq.getFileNames(); String fieldName = null; while (iterator.hasNext()) { fieldName = (String) iterator.next(); // Assuming only 1 file is uploaded per page // can be modified to handle multiple uploads per request } MultipartFile file = mreq.getFile(fieldName); if (file != null) { String fullName = file.getOriginalFilename(); if (fullName != null && fullName.trim().length() != 0) { int lastIndex = fullName.lastIndexOf("."); if (lastIndex != -1) { String fileName = fullName.substring(0, lastIndex); String extension = fullName.substring(lastIndex + 1); mreq.setAttribute(JasperServerConst.UPLOADED_FILE_NAME, fileName); mreq.setAttribute(JasperServerConst.UPLOADED_FILE_EXT, extension); } else { mreq.setAttribute(JasperServerConst.UPLOADED_FILE_NAME, fullName); } } } } } } catch (MultipartException e) { log.error("Cannot resolve multipart data", e); } chain.doFilter(request, response); }