DiskFileItemFactory factory = new DiskFileItemFactory(); FileItem fi = factory.createItem("formFieldName", "application/zip", false, "/var/temp/somefile.zip");
@Override public FileItem createItem(String fieldName, String contentType, boolean isFormField, String fileName) { Integer cont = map.get(fieldName) != null ? (map.get(fieldName) + 1): 0; map.put(fieldName, cont); fieldName = fieldName.replace(MULTI_SUFFIX, "") + "-" + cont; return super.createItem(fieldName, contentType, isFormField, fileName); } }
public FileItem createItem(String fieldName, String contentType, boolean isFormField, String fileName) { try { final DiskFileItem item = (DiskFileItem) super.createItem(fieldName, contentType, isFormField, fileName); // Needed to make sure the File object is created. item.getOutputStream(); item.getStoreLocation().deleteOnExit(); return item; } catch (IOException e) { String path = System.getProperty("java.io.tmpdir"); if (super.getRepository() != null) { path = super.getRepository().getPath(); } throw new RuntimeException("Unable to create a temporary file for saving the attachment. " + "Do you have write access on " + path + "?"); } } };
DiskFileItem diskFileItem = (DiskFileItem) diskFileItemFactory.createItem(fieldName, contentType, formField, fileName); Streams.copy(fieldStream.openStream(), diskFileItem.getOutputStream(), true);
DiskFileItem diskFileItem = (DiskFileItem) diskFileItemFactory.createItem(fieldName, contentType, formField, fileName); Streams.copy(fieldStream.openStream(), diskFileItem.getOutputStream(), true);
DiskFileItem diskFileItem = (DiskFileItem) diskFileItemFactory.createItem(fieldName, contentType, formField, fileName); Streams.copy(fieldStream.openStream(), diskFileItem.getOutputStream(), true);