List of usage examples for org.apache.commons.fileupload FileUpload setHeaderEncoding
public void setHeaderEncoding(String encoding)
From source file:com.asual.summer.core.spring.RequestMultipartResolver.java
protected FileUpload prepareFileUpload(String encoding) { FileUpload fileUpload = getFileUpload(); FileUpload actualFileUpload = fileUpload; if (encoding != null && !encoding.equals(fileUpload.getHeaderEncoding())) { actualFileUpload = newFileUpload(new StreamFileItemFactory()); actualFileUpload.setSizeMax(fileUpload.getSizeMax()); actualFileUpload.setHeaderEncoding(encoding); }//from www .ja v a 2s . c o m return actualFileUpload; }
From source file:com.aspectran.web.support.multipart.inmemory.MemoryMultipartFormDataParser.java
@Override public void parse(RequestAdapter requestAdapter) { try {//from w w w . jav a2 s .c o m MemoryFileItemFactory factory = new MemoryFileItemFactory(); if (maxInMemorySize > -1) { factory.setSizeThreshold(maxInMemorySize); } FileUpload upload = new ServletFileUpload(factory); upload.setHeaderEncoding(requestAdapter.getEncoding()); if (maxRequestSize > -1) { upload.setSizeMax(maxRequestSize); } if (maxFileSize > -1) { upload.setFileSizeMax(maxFileSize); } Map<String, List<FileItem>> fileItemListMap; try { RequestContext requestContext = createRequestContext(requestAdapter.getAdaptee()); fileItemListMap = upload.parseParameterMap(requestContext); } catch (SizeLimitExceededException e) { log.warn("Maximum request length exceeded; multipart.maxRequestSize: " + maxRequestSize); requestAdapter.setMaxLengthExceeded(true); return; } catch (FileSizeLimitExceededException e) { log.warn("Maximum file length exceeded; multipart.maxFileSize: " + maxFileSize); requestAdapter.setMaxLengthExceeded(true); return; } parseMultipartParameters(fileItemListMap, requestAdapter); } catch (Exception e) { throw new MultipartRequestParseException("Failed to parse multipart request; nested exception is " + e, e); } }
From source file:com.aspectran.web.support.multipart.commons.CommonsMultipartFormDataParser.java
@Override public void parse(RequestAdapter requestAdapter) { try {//from w ww. ja v a 2s. c om DiskFileItemFactory factory = new DiskFileItemFactory(); if (maxInMemorySize > -1) { factory.setSizeThreshold(maxInMemorySize); } if (tempDirectoryPath != null) { File repository = new File(tempDirectoryPath); if (!repository.exists() && !repository.mkdirs()) { throw new IllegalArgumentException( "Given tempDirectoryPath [" + tempDirectoryPath + "] could not be created"); } factory.setRepository(repository); } FileUpload upload = new ServletFileUpload(factory); upload.setHeaderEncoding(requestAdapter.getEncoding()); if (maxRequestSize > -1L) { upload.setSizeMax(maxRequestSize); } if (maxFileSize > -1L) { upload.setFileSizeMax(maxFileSize); } Map<String, List<FileItem>> fileItemListMap; try { RequestContext requestContext = createRequestContext(requestAdapter.getAdaptee()); fileItemListMap = upload.parseParameterMap(requestContext); } catch (FileUploadBase.SizeLimitExceededException e) { log.warn("Maximum request length exceeded; multipart.maxRequestSize: " + maxRequestSize); requestAdapter.setMaxLengthExceeded(true); return; } catch (FileUploadBase.FileSizeLimitExceededException e) { log.warn("Maximum file length exceeded; multipart.maxFileSize: " + maxFileSize); requestAdapter.setMaxLengthExceeded(true); return; } parseMultipartParameters(fileItemListMap, requestAdapter); } catch (Exception e) { throw new MultipartRequestParseException("Could not parse multipart servlet request", e); } }
From source file:de.uhh.l2g.upload.MyCommonsFileUploadSupport.java
/** * Prepare file upload.// ww w . j av a2 s . co m * * @param encoding the encoding * @return the file upload */ @Override protected FileUpload prepareFileUpload(String encoding) { FileUpload fileUpload = getFileUpload(); FileUpload actualFileUpload = fileUpload; // Use new temporary FileUpload instance if the request specifies // its own encoding that does not match the default encoding. if (encoding != null && !encoding.equals(fileUpload.getHeaderEncoding())) { actualFileUpload = newFileUpload(getFileItemFactory()); actualFileUpload.setSizeMax(fileUpload.getSizeMax()); actualFileUpload.setHeaderEncoding(encoding); } return actualFileUpload; }
From source file:net.formio.upload.AbstractMultipartRequestParser.java
/** * Convenience method for common configuration of {@link FileUpload}. * Can be called from {@link #parseRequest(FileItemFactory, long, long, String)} method * that must be implemented by subclasses. * @param upload//from w w w . ja v a 2s . c o m * @param singleFileSizeMax * @param totalSizeMax * @param defaultEncoding */ protected void configureUpload(final FileUpload upload, long singleFileSizeMax, long totalSizeMax, String defaultEncoding) { // set overall request size constraint // maximum allowed size of a single uploaded file upload.setFileSizeMax(singleFileSizeMax); // maximum allowed size of the whole request upload.setSizeMax(totalSizeMax); if (defaultEncoding != null) { upload.setHeaderEncoding(defaultEncoding); } }
From source file:de.uhh.l2g.upload.MyCommonsPortletMultipartResolver.java
/** * Prepare file upload./*from w w w . j a v a 2 s . c o m*/ * * @param encoding the encoding * @return the file upload */ @Override protected FileUpload prepareFileUpload(String encoding) { FileUpload fileUpload = getFileUpload(); FileUpload actualFileUpload = fileUpload; // Use new temporary FileUpload instance if the request specifies // its own encoding that does not match the default encoding. if (encoding != null && !encoding.equals(fileUpload.getHeaderEncoding())) { actualFileUpload = newFileUpload(getFileItemFactory()); actualFileUpload.setSizeMax(fileUpload.getSizeMax()); actualFileUpload.setHeaderEncoding(encoding); } return actualFileUpload; }
From source file:cn.clxy.studio.common.web.multipart.GFileUploadSupport.java
/** * Determine an appropriate FileUpload instance for the given encoding. * <p>/* ww w .j a va 2s .c o m*/ * Default implementation returns the shared FileUpload instance if the encoding matches, else creates a new * FileUpload instance with the same configuration other than the desired encoding. * * @param encoding the character encoding to use * @return an appropriate FileUpload instance. */ protected FileUpload prepareFileUpload(String encoding) { FileUpload fileUpload = getFileUpload(); FileUpload actualFileUpload = fileUpload; // Use new temporary FileUpload instance if the request specifies // its own encoding that does not match the default encoding. if (encoding != null && !encoding.equals(fileUpload.getHeaderEncoding())) { actualFileUpload = newFileUpload(getFileItemFactory()); actualFileUpload.setSizeMax(fileUpload.getSizeMax()); actualFileUpload.setHeaderEncoding(encoding); } return actualFileUpload; }
From source file:org.nuxeo.ecm.platform.ui.web.util.FileUploadHelper.java
/** * Parses a Multipart Servlet Request to extract blobs *///w ww . j a v a 2 s .co m public static List<Blob> parseRequest(HttpServletRequest request) throws FileUploadException, IOException { List<Blob> blobs = new ArrayList<Blob>(); if (request instanceof MultipartRequest) { MultipartRequest seamMPRequest = (MultipartRequest) request; Enumeration<String> names = seamMPRequest.getParameterNames(); while (names.hasMoreElements()) { String name = names.nextElement(); try (InputStream in = seamMPRequest.getFileInputStream(name)) { if (in != null) { Blob blob = Blobs.createBlob(in); blob.setFilename(seamMPRequest.getFileName(name)); blobs.add(blob); } } } } else { // fallback method for non-seam servlet request FileUpload fu = new FileUpload(new DiskFileItemFactory()); String fileNameCharset = request.getHeader("FileNameCharset"); if (fileNameCharset != null) { fu.setHeaderEncoding(fileNameCharset); } ServletRequestContext requestContext = new ServletRequestContext(request); List<FileItem> fileItems = fu.parseRequest(requestContext); for (FileItem item : fileItems) { try (InputStream is = item.getInputStream()) { Blob blob = Blobs.createBlob(is); blob.setFilename(item.getName()); blobs.add(blob); } } } return blobs; }
From source file:org.seasar.cubby.controller.impl.MultipartRequestParser.java
@SuppressWarnings("unchecked") Map<String, Object[]> getMultipartParameterMap(final FileUpload fileUpload, final RequestContext requestContext) { try {/*from ww w.j a va 2s .c o m*/ final String encoding = requestContext.getCharacterEncoding(); fileUpload.setHeaderEncoding(encoding); final List<FileItem> items = fileUpload.parseRequest(requestContext); // Field???? final Map<String, Object[]> parameterMap = toParameterMap(encoding, items); return parameterMap; } catch (final FileUploadException e) { final String messageCode; final Object[] args; if (e instanceof SizeLimitExceededException) { final SizeLimitExceededException sle = (SizeLimitExceededException) e; messageCode = "ECUB0202"; args = new Object[] { sle.getPermittedSize(), sle.getActualSize() }; } else { messageCode = "ECUB0201"; args = new Object[] { e }; } throw new RequestParseException(format(messageCode, args), e); } catch (final IOException e) { throw new RequestParseException(e); } }
From source file:org.springframework.web.multipart.commons.CommonsFileUploadSupport.java
/** * Determine an appropriate FileUpload instance for the given encoding. * <p>Default implementation returns the shared FileUpload instance * if the encoding matches, else creates a new FileUpload instance * with the same configuration other than the desired encoding. * @param encoding the character encoding to use * @return an appropriate FileUpload instance. *//*w w w . ja va2 s. com*/ protected FileUpload prepareFileUpload(@Nullable String encoding) { FileUpload fileUpload = getFileUpload(); FileUpload actualFileUpload = fileUpload; // Use new temporary FileUpload instance if the request specifies // its own encoding that does not match the default encoding. if (encoding != null && !encoding.equals(fileUpload.getHeaderEncoding())) { actualFileUpload = newFileUpload(getFileItemFactory()); actualFileUpload.setSizeMax(fileUpload.getSizeMax()); actualFileUpload.setFileSizeMax(fileUpload.getFileSizeMax()); actualFileUpload.setHeaderEncoding(encoding); } return actualFileUpload; }