Refine search
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { List<FileItem> items = new ServletFileUpload(new DiskFileItemFactory()).parseRequest(request); for (FileItem item : items) { if (item.isFormField()) { // Process regular form field (input type="text|radio|checkbox|etc", select, etc). String fieldName = item.getFieldName(); String fieldValue = item.getString(); // ... (do your job here) } else { // Process form file field (input type="file"). String fieldName = item.getFieldName(); String fileName = FilenameUtils.getName(item.getName()); InputStream fileContent = item.getInputStream(); // ... (do your job here) } } } catch (FileUploadException e) { throw new ServletException("Cannot parse multipart request.", e); } // ... }
try { for (FileItem item : (List<FileItem>) up.parseRequest(httpRequest)) { if (item.isFormField()) { kvpFileItems.put(item.getFieldName(), item); } else { request.setInput(fileItemReader(item));
private void processFormField(FileItem formField, Map<String, String[]> parameterMap) { String name = formField.getFieldName(); String value = formField.getString(); String[] values = parameterMap.get(name); if (values == null) { // Not in parameter map yet, so add as new value. parameterMap.put(name, new String[]{value}); } else { // Multiple field values, so add new value to existing array. int length = values.length; String[] newValues = new String[length + 1]; System.arraycopy(values, 0, newValues, 0, length); newValues[length] = value; parameterMap.put(name, newValues); } }
public Map<String, Object> parseMultipart(final HttpServletRequest request) throws IOException, ServletException { final ServletFileUpload upload = new ServletFileUpload(this._uploadItemFactory); List<FileItem> items = null; try { items = upload.parseRequest(request); } catch (final FileUploadException e) { throw new ServletException(e); } final Map<String, Object> params = new HashMap<>(); for (final FileItem item : items) { if (item.isFormField()) { params.put(item.getFieldName(), item.getString()); } else { params.put(item.getFieldName(), item); } } return params; }
/** * Test construction of a regular text field. */ @Test public void testTextFieldConstruction() { FileItemFactory factory = createFactory(null); String textFieldName = "textField"; FileItem item = factory.createItem( textFieldName, textContentType, true, null ); assertNotNull(item); assertEquals(item.getFieldName(), textFieldName); assertEquals(item.getContentType(), textContentType); assertTrue(item.isFormField()); assertNull(item.getName()); }
private String formFieldToXml(FileItem i) { Map<String, String> item = new HashMap<String, String>(); item.put(TAG_VALUE, "" + i.getString()); item.put(TAG_FIELD, "" + i.getFieldName()); Map<String, String> param = new HashMap<String, String>(); param.put(TAG_PARAM, statusToString(item)); return statusToString(param); }
for (FileItem item : formItems) { if (item.isFormField()) { // Process regular form field (input type="text|radio|checkbox|etc", select, etc). String fieldname = item.getFieldName(); String fieldvalue = item.getString(); // ... (do your job here) } else { // Process form file field (input type="file"). String fieldname = item.getFieldName(); String filename = FilenameUtils.getName(item.getName()); InputStream filecontent = item.getInputStream(); // ... (do your job here) } }
/** * Test construction of a file field. */ @Test public void testFileFieldConstruction() { FileItemFactory factory = createFactory(null); String fileFieldName = "fileField"; String fileName = "originalFileName"; FileItem item = factory.createItem( fileFieldName, fileContentType, false, fileName ); assertNotNull(item); assertEquals(item.getFieldName(), fileFieldName); assertEquals(item.getContentType(), fileContentType); assertFalse(item.isFormField()); assertEquals(item.getName(), fileName); }
private void parseFormField(FileItem item, String encoding) { String name = item.getFieldName(); String value = item.getString(); if(!GeneralHelper.isStrEmpty(value) && encoding != null) { try { value = new String(value.getBytes("ISO-8859-1"), encoding); } catch(UnsupportedEncodingException e) { } } addParamField(name, value); }
if (fileItem.isFormField()) { String value; String partEncoding = determineEncoding(fileItem.getContentType(), encoding); try { value = fileItem.getString(partEncoding); logger.warn("Could not decode multipart item '" + fileItem.getFieldName() + "' with encoding '" + partEncoding + "': using platform default"); value = fileItem.getString(); String[] curParam = multipartParameters.get(fileItem.getFieldName()); if (curParam == null) { multipartParameters.put(fileItem.getFieldName(), new String[] {value}); multipartParameters.put(fileItem.getFieldName(), newParam); multipartParameterContentTypes.put(fileItem.getFieldName(), fileItem.getContentType());
private void processUpload(HttpServletRequest request, String saveDir) throws FileUploadException, UnsupportedEncodingException { for (FileItem item : parseRequest(request, saveDir)) { if (LOG.isDebugEnabled()) { LOG.debug("Found item " + item.getFieldName()); } if (item.isFormField()) { processNormalFormField(item, request.getCharacterEncoding()); } else { processFileField(item); } } }
/** * Add the <code>FileItem</code> as a paramter into the <code>MultipartForm</code>. */ private void addField(HttpServletRequest request, FileItem item, MultipartForm form) { String name = item.getFieldName(); String value; try { String encoding = StringUtils.defaultString(request.getCharacterEncoding(), "UTF-8"); value = item.getString(encoding); } catch (UnsupportedEncodingException ex) { value = item.getString(); } form.addParameter(name, value); String[] values = form.getParameterValues(name); if (values == null) { form.addparameterValues(name, new String[]{value}); } else { form.addparameterValues(name, ArrayUtils.add(values, value)); } }
for (FileItem item : formItems) { // processes only fields that are not form fields if (!item.isFormField()) { String fileName = new File(item.getName()).getName(); fileName1+=fileName; String filePath = uploadPath + File.separator + fileName; File storeFile = new File(filePath); // saves the file on disk item.write(storeFile); } else { //here... String fieldname = item.getFieldName(); String fieldvalue = item.getString(); if (fieldname.equals("p_data")) { //logic goes here... } else if (fieldname.equals("upload_wall_gallery")) { //next logic goes here... } } }
/** * Add the given file item to the list defined for its name and make the * list is present in the map. If the item does not represent a simple * form field its name is also added to the <code>fileParamNames</code> set. * * @param item The {@link FileItem} to add. */ private void addItem(FileItem item) { String name = item.getFieldName(); List<FileItem> l = nameToItems.get(item.getFieldName()); if (l == null) { l = new ArrayList<FileItem>(); nameToItems.put(name, l); } l.add(item); // if file parameter, add name to the set of file parameters in order to // be able to extract the file parameter values later on without iterating // over all keys. if (!item.isFormField()) { fileParamNames.add(name); } }
if (fileItem.isFormField()) { String value; String partEncoding = determineEncoding(fileItem.getContentType(), encoding); try { value = fileItem.getString(partEncoding); logger.warn("Could not decode multipart item '" + fileItem.getFieldName() + "' with encoding '" + partEncoding + "': using platform default"); value = fileItem.getString(); String[] curParam = multipartParameters.get(fileItem.getFieldName()); if (curParam == null) { multipartParameters.put(fileItem.getFieldName(), new String[] {value}); multipartParameters.put(fileItem.getFieldName(), newParam); multipartParameterContentTypes.put(fileItem.getFieldName(), fileItem.getContentType());
for (FileItem item : sessionFiles) { if (false == item.isFormField()) { try { /// Create a temporary file placed in the default system temp folder File file = File.createTempFile("upload-", ".bin"); item.write(file); /// Save a list with the received files receivedFiles.put(item.getFieldName(), file); receivedContentTypes.put(item.getFieldName(), item.getContentType()); /// Send a customized message to the client. response += "File saved as " + file.getAbsolutePath(); // Below line is creating the problem. removeItem(request, item.getFieldName()); } catch (Exception e) { throw new UploadActionException(e); } } }
while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); if (item.isFormField()) { if (item.getFieldName().equals("scmOverwrite")) { scmOverwrite = item.getString(); if (item.getFieldName().equals("scmServer")) { scmServer = item.getString(); if (item.getFieldName().equals("scmFilePath")) { scmFilePath = item.getString(); if (item.getFieldName().equals("scmFileRevision")) { scmFileRevision = item.getString();
private FileItem getFileItem( HttpServletRequest request ) { FileItemFactory factory = new DiskFileItemFactory(); ServletFileUpload upload = new ServletFileUpload( factory ); try { List items = upload.parseRequest( request ); Iterator it = items.iterator(); while ( it.hasNext() ) { FileItem item = (FileItem) it.next(); if ( !item.isFormField() && "uploadFormElement".equals( item.getFieldName() ) ) { //$NON-NLS-1$ return item; } } } catch ( FileUploadException e ) { return null; } return null; }
assertEquals(6, items.size()); FileItem item = items.get(0); assertTrue(item.isFormField()); assertEquals("name 1", item.getFieldName()); assertEquals("value 1", item.getString()); assertTrue(item.isFormField()); assertEquals("name 2", item.getFieldName()); assertEquals("value 2+1", item.getString()); assertTrue(item.isFormField()); assertEquals("name 2", item.getFieldName()); assertEquals("value 2+2", item.getString()); assertFalse(item.isFormField()); assertEquals("logo", item.getFieldName()); assertEquals("logo.jpg", item.getName()); assertEquals("image/jpeg", item.getContentType()); assertFalse(item.isFormField()); assertEquals("utf8", item.getFieldName()); assertEquals("Hall\u00F6le.jpg", item.getName()); assertEquals("image/jpeg", item.getContentType()); assertEquals("xml", item.getFieldName()); assertEquals("text/xml", item.getContentType()); verify(outputMessage.getBody(), never()).close();
ApacheFileItemFacade(org.apache.commons.fileupload.FileItem apacheFileItem) throws IOException { this.name = apacheFileItem.getName(); this.fieldName = apacheFileItem.getFieldName(); this.contentType = apacheFileItem.getContentType(); this.isFile = !apacheFileItem.isFormField(); this.inputStream = apacheFileItem.getInputStream(); }