List of usage examples for org.apache.commons.fileupload.disk DiskFileItemFactory setRepository
public void setRepository(File repository)
From source file:it.infn.ct.ParallelSemanticSearch_portlet.java
public void getInputForm(ActionRequest request, App_Input appInput) { if (PortletFileUpload.isMultipartContent(request)) { try {//from w ww . j av a 2s .c o m FileItemFactory factory = new DiskFileItemFactory(); PortletFileUpload upload = new PortletFileUpload(factory); List items = upload.parseRequest(request); File repositoryPath = new File("/tmp"); DiskFileItemFactory diskFileItemFactory = new DiskFileItemFactory(); diskFileItemFactory.setRepository(repositoryPath); Iterator iter = items.iterator(); String logstring = ""; while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); String fieldName = item.getFieldName(); String fileName = item.getName(); String contentType = item.getContentType(); boolean isInMemory = item.isInMemory(); long sizeInBytes = item.getSize(); // Prepare a log string with field list logstring += LS + "field name: '" + fieldName + "' - '" + item.getString() + "'"; switch (inputControlsIds.valueOf(fieldName)) { case JobIdentifier: appInput.jobIdentifier = item.getString(); break; default: _log.warn("Unhandled input field: '" + fieldName + "' - '" + item.getString() + "'"); } // switch fieldName } // while iter.hasNext() _log.info(LS + "Reporting" + LS + "---------" + LS + logstring + LS); } // try catch (Exception e) { _log.info("Caught exception while processing files to upload: '" + e.toString() + "'"); } } // The input form do not use the "multipart/form-data" else { // Retrieve from the input form the given application values appInput.search_word = (String) request.getParameter("search_word"); appInput.jobIdentifier = (String) request.getParameter("JobIdentifier"); appInput.nameSubject = (String) request.getParameter("nameSubject"); appInput.idResouce = (String) request.getParameter("idResource"); appInput.selected_language = (String) request.getParameter("selLanguage"); appInput.numberPage = (String) request.getParameter("numberOfPage"); appInput.numberPageOpenAgris = (String) request.getParameter("numberOfPageOpenAgris"); appInput.numRecordsForPage = (String) request.getParameter("numberOfRecords"); appInput.moreResourceCHAIN = (String) request.getParameter("moreResourceCHAIN"); appInput.moreResourceOpenAgris = (String) request.getParameter("moreResourceOpenAgris"); appInput.idResourceOpenAgris = (String) request.getParameter("idResourceOpenAgris"); appInput.moreInfoOpenAgris = (String) request.getParameter("moreInfoOpenAgris"); appInput.moreInfo = (String) request.getParameter("moreInfo"); appInput.numberPageCulturaItalia = (String) request.getParameter("numberOfPageCulturaItalia"); appInput.moreResourceCulturaItalia = (String) request.getParameter("moreResourceCulturaItalia"); appInput.moreInfoCulturaItalia = (String) request.getParameter("moreInfoCulturaItalia"); appInput.numResource = (String) request.getParameter("numResource"); appInput.numResourceFromDetails = (String) request.getParameter("numResourceFromDetails"); appInput.numResourceOpenAgris = (String) request.getParameter("numResourceOpenAgris"); appInput.numResourceOpenAgrisFromDetails = (String) request .getParameter("numResourceOpenAgrisFromDetails"); appInput.numResourceCulturaItalia = (String) request.getParameter("numResourceCulturaItalia"); appInput.numResourceCulturaItaliaFromDetails = (String) request .getParameter("numResourceCulturaItaliaFromDetails"); appInput.idResourceCulturaItalia = (String) request.getParameter("idResourceCulturaItalia"); appInput.numberPageIsidore = (String) request.getParameter("numberOfPageIsidore"); appInput.moreResourceIsidore = (String) request.getParameter("moreResourceIsidore"); appInput.idResourceIsidore = (String) request.getParameter("idResourceIsidore"); appInput.numResourceIsidore = (String) request.getParameter("numResourceIsidore"); appInput.numResourceIsidoreFromDetails = (String) request.getParameter("numResourceIsidoreFromDetails"); appInput.numberPageIsidore = (String) request.getParameter("numberOfPageIsidore"); appInput.moreInfoIsidore = (String) request.getParameter("moreInfoIsidore"); appInput.idResourceEuropeana = (String) request.getParameter("idResourceEuropeana"); appInput.moreResourceEuropeana = (String) request.getParameter("moreResourceEuropeana"); appInput.numberPageEuropeana = (String) request.getParameter("numberOfPageEuropeana"); appInput.numResourceEuropeana = (String) request.getParameter("numResourceEuropeana"); appInput.numResourceEuropeanaFromDetails = (String) request .getParameter("numResourceEuropeanaFromDetails"); appInput.numberPageEuropeana = (String) request.getParameter("numberOfPageEuropeana"); appInput.moreInfoEuropeana = (String) request.getParameter("moreInfoEuropeana"); appInput.idResourcePubmed = (String) request.getParameter("idResourcePubmed"); appInput.moreResourcePubmed = (String) request.getParameter("moreResourcePubmed"); appInput.numberPagePubmed = (String) request.getParameter("numberOfPagePubmed"); appInput.numResourcePubmed = (String) request.getParameter("numResourcePubmed"); appInput.numResourcePubmedFromDetails = (String) request.getParameter("numResourcePubmedFromDetails"); appInput.moreInfoPubmed = (String) request.getParameter("moreInfoPubmed"); appInput.idResourceEngage = (String) request.getParameter("idResourceEngage"); appInput.moreResourceEngage = (String) request.getParameter("moreResourceEngage"); appInput.numberPageEngage = (String) request.getParameter("numberOfPageEngage"); appInput.numResourceEngage = (String) request.getParameter("numResourceEngage"); appInput.numResourceEngageFromDetails = (String) request.getParameter("numResourceEngageFromDetails"); appInput.moreInfoEngage = (String) request.getParameter("moreInfoEngage"); appInput.title_GS = (String) request.getParameter("title_GS"); } // ! isMultipartContent // Show into the log the taken inputs _log.info(LS + "Taken input parameters:" + LS + "-----------------------" + LS + "Search Word: '" + appInput.search_word + "'" + LS + "jobIdentifier: '" + appInput.jobIdentifier + "'" + LS + "subject: '" + appInput.nameSubject + "'" + LS + "idResource: '" + appInput.idResouce + "'" + LS + "language selected: '" + appInput.selected_language + "'" + LS + "number page selected: '" + appInput.numberPage + "'" + LS + "number record for page: '" + appInput.numRecordsForPage + "'" + LS + "number page selected OpenAgris: '" + appInput.numberPageOpenAgris + "'" + LS + "moreResourceCHAIN: '" + appInput.moreResourceCHAIN + "'" + LS + "moreInfo: '" + appInput.moreInfo + "'" + LS + "moreResourceOpenAgris: '" + appInput.moreResourceOpenAgris + "'" + LS + "idResourceOpenAgris: '" + appInput.idResourceOpenAgris + "'" + LS + "moreInfoOpenAgris: '" + appInput.moreInfoOpenAgris + "'" + LS + "number page selected CulturaItalia: '" + appInput.numberPageCulturaItalia + "'" + LS + "moreResourceCulturaItalia: '" + appInput.moreResourceCulturaItalia + "'" + LS + "moreInfoCulturaItalia: '" + appInput.moreInfoCulturaItalia + "'" + LS + "NumResource: '" + appInput.numResource + "'" + LS + "NumResourceFromDetails: '" + appInput.numResourceFromDetails + "'" + LS + "NumResourceOpenAgris: '" + appInput.numResourceOpenAgris + "'" + LS + "NumResourceOpenAgrisFromDetails: '" + appInput.numResourceOpenAgrisFromDetails + "'" + LS + "NumResourceCulturaItalia: '" + appInput.numResourceCulturaItalia + "'" + LS + "NumResourceCulturaItaliaFromDetails: '" + appInput.numResourceCulturaItaliaFromDetails + "'" + LS + "idResourceCulturaItalia: '" + appInput.idResourceCulturaItalia + "'" + LS + "moreResourceEuropeana: '" + appInput.moreResourceEuropeana + "'" + LS); }
From source file:it.infn.ct.nuclemd.Nuclemd.java
public String[] uploadNuclemdSettings(ActionRequest actionRequest, ActionResponse actionResponse, String username) {//from w w w.j av a 2s . c o m String[] NUCLEMD_Parameters = new String[9]; boolean status; // Check that we have a file upload request boolean isMultipart = PortletFileUpload.isMultipartContent(actionRequest); if (isMultipart) { // Create a factory for disk-based file items. DiskFileItemFactory factory = new DiskFileItemFactory(); // Set factory constrains File NUCLEMD_Repository = new File("/tmp"); if (!NUCLEMD_Repository.exists()) status = NUCLEMD_Repository.mkdirs(); factory.setRepository(NUCLEMD_Repository); // Create a new file upload handler. PortletFileUpload upload = new PortletFileUpload(factory); try { // Parse the request List items = upload.parseRequest(actionRequest); // Processing items Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); String fieldName = item.getFieldName(); DateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); String timeStamp = dateFormat.format(Calendar.getInstance().getTime()); // Processing a regular form field if (item.isFormField()) { if (fieldName.equals("nuclemd_release")) NUCLEMD_Parameters[8] = item.getString(); if (fieldName.equals("nuclemd_desc")) if (item.getString().equals("Please, insert here a description")) NUCLEMD_Parameters[0] = "NUCLEMD Simulation Started"; else NUCLEMD_Parameters[0] = item.getString(); if (fieldName.equals("nuclemd_CE")) NUCLEMD_Parameters[1] = item.getString(); } else { // Processing a file upload if (fieldName.equals("nuclemd_fileinp")) { log.info("\n- Uploading the input file: " + "\n[ " + item.getName() + " ]" + "\n[ " + item.getContentType() + " ]" + "\n[ " + item.getSize() + "KBytes ]"); // Writing the file to disk String uploadNuclemdFile = NUCLEMD_Repository + "/" + timeStamp + "_" + username + "_" + item.getName(); log.info("\n- Writing the file: [ " + uploadNuclemdFile.toString() + " ] to disk"); item.write(new File(uploadNuclemdFile)); // Writing the file to disk String uploadNuclemdFile_stripped = NUCLEMD_Repository + "/" + timeStamp + "_" + username + "_" + item.getName() + "_stripped"; NUCLEMD_Parameters[2] = RemoveCarriageReturn(uploadNuclemdFile, uploadNuclemdFile_stripped); } if (fieldName.equals("nuclemd_fileconf_1")) { log.info("\n- Uploading the input file: " + "\n[ " + item.getName() + " ]" + "\n[ " + item.getContentType() + " ]" + "\n[ " + item.getSize() + "KBytes ]"); // Writing the file to disk String uploadNuclemdFile = NUCLEMD_Repository + "/" + timeStamp + "_" + username + "_" + item.getName(); log.info("\n- Writing the file: [ " + uploadNuclemdFile.toString() + " ] to disk"); item.write(new File(uploadNuclemdFile)); // Writing the file to disk String uploadNuclemdFile_stripped = NUCLEMD_Repository + "/" + timeStamp + "_" + username + "_" + item.getName() + "_stripped"; NUCLEMD_Parameters[3] = RemoveCarriageReturn(uploadNuclemdFile, uploadNuclemdFile_stripped); } if (fieldName.equals("nuclemd_fileconf_2")) { log.info("\n- Uploading the input file: " + "\n[ " + item.getName() + " ]" + "\n[ " + item.getContentType() + " ]" + "\n[ " + item.getSize() + "KBytes ]"); // Writing the file to disk String uploadNuclemdFile = NUCLEMD_Repository + "/" + timeStamp + "_" + username + "_" + item.getName(); log.info("\n- Writing the file: [ " + uploadNuclemdFile.toString() + " ] to disk"); item.write(new File(uploadNuclemdFile)); // Writing the file to disk String uploadNuclemdFile_stripped = NUCLEMD_Repository + "/" + timeStamp + "_" + username + "_" + item.getName() + "_stripped"; NUCLEMD_Parameters[4] = RemoveCarriageReturn(uploadNuclemdFile, uploadNuclemdFile_stripped); } } if (fieldName.equals("EnableNotification")) NUCLEMD_Parameters[5] = item.getString(); if (fieldName.equals("nuclemd_maxwallclocktime")) NUCLEMD_Parameters[6] = item.getString(); if (fieldName.equals("EnableDemo")) NUCLEMD_Parameters[7] = item.getString(); } // end while } catch (FileUploadException ex) { Logger.getLogger(Nuclemd.class.getName()).log(Level.SEVERE, null, ex); } catch (Exception ex) { Logger.getLogger(Nuclemd.class.getName()).log(Level.SEVERE, null, ex); } } return NUCLEMD_Parameters; }
From source file:it.infn.ct.wrf.Wrf.java
public String[] uploadSettings(ActionRequest actionRequest, ActionResponse actionResponse, String username) { String[] _Parameters = new String[7]; boolean status; // Check that we have a file upload request boolean isMultipart = PortletFileUpload.isMultipartContent(actionRequest); if (isMultipart) { // Create a factory for disk-based file items. DiskFileItemFactory factory = new DiskFileItemFactory(); // Set factory constrains File _Repository = new File("/tmp"); if (!_Repository.exists()) status = _Repository.mkdirs(); factory.setRepository(_Repository); // Create a new file upload handler. PortletFileUpload upload = new PortletFileUpload(factory); try {/*from www .j a va 2s . c o m*/ // Parse the request List items = upload.parseRequest(actionRequest); // Processing items Iterator iter = items.iterator(); while (iter.hasNext()) { FileItem item = (FileItem) iter.next(); String fieldName = item.getFieldName(); DateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); String timeStamp = dateFormat.format(Calendar.getInstance().getTime()); // Processing a regular form field if (item.isFormField()) { if (fieldName.equals("wrf_textarea_OCTAVE")) { _Parameters[0] = _Repository + "/" + timeStamp + "_" + username + ".m"; // Store the textarea in a ASCII file storeString(_Parameters[0], item.getString()); } if (fieldName.equals("wrf_textarea_R")) { _Parameters[0] = _Repository + "/" + timeStamp + "_" + username + ".r"; // Store the textarea in a ASCII file storeString(_Parameters[0], item.getString()); } if (fieldName.equals("wrftype")) _Parameters[1] = item.getString(); if (fieldName.equals("wrf_CR")) _Parameters[2] = item.getString(); if (fieldName.equals("wrfvmtemplate")) _Parameters[5] = item.getString(); if (fieldName.equals("wrf_vmname")) _Parameters[6] = item.getString(); } else { // Processing a file upload if (fieldName.equals("wrf_file_OCTAVE") || fieldName.equals("wrf_file_R")) { log.info("\n- Uploading the following user's file: " + "\n[ " + item.getName() + " ]" + "\n[ " + item.getContentType() + " ]" + "\n[ " + item.getSize() + "KBytes ]"); // Writing the file to disk String uploadFile = _Repository + "/" + timeStamp + "_" + username + "_" + item.getName(); log.info("\n- Writing the user's file: [ " + uploadFile.toString() + " ] to disk"); item.write(new File(uploadFile)); _Parameters[0] = uploadFile; } } if (fieldName.equals("EnableNotification")) _Parameters[3] = item.getString(); if (fieldName.equals("wrf_desc")) if (item.getString().equals("Please, insert here a description for your run")) _Parameters[4] = "Cloud Simulation Started"; else _Parameters[4] = item.getString(); } // end while } catch (FileUploadException ex) { Logger.getLogger(Wrf.class.getName()).log(Level.SEVERE, null, ex); } catch (Exception ex) { Logger.getLogger(Wrf.class.getName()).log(Level.SEVERE, null, ex); } } return _Parameters; }
From source file:com.portfolio.data.provider.MysqlDataProvider.java
@Override public Object postPortfolioZip(MimeType mimeType, MimeType mimeType2, HttpServletRequest httpServletRequest, int userId, int groupId, String modelId, int substid) throws IOException { if (!credential.isAdmin(userId) && !credential.isCreator(userId)) throw new RestWebApplicationException(Status.FORBIDDEN, "No admin right"); boolean isMultipart = ServletFileUpload.isMultipartContent(httpServletRequest); // Create a factory for disk-based file items DiskFileItemFactory factory = new DiskFileItemFactory(); // Configure a repository (to ensure a secure temp location is used) ServletContext servletContext = httpServletRequest.getSession().getServletContext(); File repository = (File) servletContext.getAttribute("javax.servlet.context.tempdir"); factory.setRepository(repository); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); DataInputStream inZip = null; // Parse the request try {// ww w .j a v a 2 s .c o m List<FileItem> items = upload.parseRequest(httpServletRequest); // Process the uploaded items Iterator<FileItem> iter = items.iterator(); while (iter.hasNext()) { FileItem item = iter.next(); if (!item.isFormField()) { inZip = new DataInputStream(item.getInputStream()); break; } } } catch (FileUploadException e) { // TODO Auto-generated catch block e.printStackTrace(); } String foldersfiles = null; String filename; String[] xmlFiles; String[] allFiles; // int formDataLength = httpServletRequest.getContentLength(); byte[] buff = new byte[0x100000]; // 1MB buffer // Recuperation de l'heure laquelle le zip est cr //Calendar cal = Calendar.getInstance(); //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss_S"); //String now = sdf.format(cal.getTime()); this.genererPortfolioUuidPreliminaire(); javax.servlet.http.HttpSession session = httpServletRequest.getSession(true); String ppath = session.getServletContext().getRealPath("/"); String outsideDir = ppath.substring(0, ppath.lastIndexOf(File.separator)) + "_files" + File.separator; File outsideDirectoryFile = new File(outsideDir); System.out.println(outsideDir); // if the directory does not exist, create it if (!outsideDirectoryFile.exists()) { outsideDirectoryFile.mkdir(); } //Creation du zip filename = outsideDir + "xml_" + this.portfolioUuidPreliminaire + ".zip"; FileOutputStream outZip = new FileOutputStream(filename); int len; while ((len = inZip.read(buff)) != -1) { outZip.write(buff, 0, len); } inZip.close(); outZip.close(); //-- unzip -- foldersfiles = unzip(filename, outsideDir + this.portfolioUuidPreliminaire + File.separator); //TODO Attention si plusieurs XML dans le fichier xmlFiles = findFiles(outsideDir + this.portfolioUuidPreliminaire + File.separator, "xml"); allFiles = findFiles(outsideDir + this.portfolioUuidPreliminaire + File.separator, null); ////// Lecture du fichier de portfolio StringBuffer outTrace = new StringBuffer(); //// Importation du portfolio //--- Read xml fileL ---- ///// Pour associer l'ancien uuid -> nouveau, pour les fichiers HashMap<String, String> resolve = new HashMap<String, String>(); String portfolioUuid = "erreur"; boolean hasLoaded = false; try { for (int i = 0; i < xmlFiles.length; i++) { String xmlFilepath = xmlFiles[i]; String xmlFilename = xmlFilepath.substring(xmlFilepath.lastIndexOf(File.separator)); if (xmlFilename.contains("_")) continue; // Case when we add an xml in the portfolio BufferedReader br = new BufferedReader(new FileReader(new File(xmlFilepath))); String line; StringBuilder sb = new StringBuilder(); while ((line = br.readLine()) != null) { sb.append(line.trim()); } String xml = "?"; xml = sb.toString(); portfolioUuid = UUID.randomUUID().toString(); if (xml.contains("<portfolio")) // Le porfolio (peux mieux faire) { Document doc = DomUtils.xmlString2Document(xml, outTrace); Node rootNode = (doc.getElementsByTagName("portfolio")).item(0); if (rootNode == null) throw new Exception("Root Node (portfolio) not found !"); else { rootNode = (doc.getElementsByTagName("asmRoot")).item(0); String uuid = UUID.randomUUID().toString(); insertMysqlPortfolio(portfolioUuid, uuid, 0, userId); writeNode(rootNode, portfolioUuid, null, userId, 0, uuid, null, 0, 0, false, resolve); } updateMysqlPortfolioActive(portfolioUuid, true); /// Finalement on cre un rle designer int groupid = postCreateRole(portfolioUuid, "designer", userId); /// Ajoute la personne dans ce groupe putUserGroup(Integer.toString(groupid), Integer.toString(userId)); hasLoaded = true; } } } catch (Exception e) { e.printStackTrace(); } if (hasLoaded) for (int i = 0; i < allFiles.length; i++) { String fullPath = allFiles[i]; String tmpFileName = allFiles[i].substring(allFiles[i].lastIndexOf(File.separator) + 1); int index = tmpFileName.indexOf("_"); if (index == -1) index = tmpFileName.indexOf("."); int last = tmpFileName.lastIndexOf(File.separator); if (last == -1) last = 0; String uuid = tmpFileName.substring(last, index); // tmpFileName = allFiles[i].substring(allFiles[i].lastIndexOf(File.separator)+1); String lang; try { // int tmpPos = tmpFileName.indexOf("_"); lang = tmpFileName.substring(index + 1, index + 3); if ("un".equals(lang)) // Hack sort of fixing previous implementation lang = "en"; } catch (Exception ex) { lang = ""; } InputStream is = new FileInputStream(allFiles[i]); byte b[] = new byte[is.available()]; is.read(b); String extension; try { extension = tmpFileName.substring(tmpFileName.lastIndexOf(".") + 1); } catch (Exception ex) { extension = null; } // trop long //String tmpMimeType = FileUtils.getMimeType("file://"+allFiles[i]); String tmpMimeType = FileUtils.getMimeTypeFromExtension(extension); // Attention on initialise la ligne file // avec l'UUID d'origine de l'asmContext parent // Il sera mis jour avec l'UUID asmContext final dans writeNode try { UUID tmpUuid = UUID.fromString(uuid); /// base uuid String resolved = resolve.get(uuid); /// New uuid String sessionval = session.getId(); String user = (String) session.getAttribute("user"); // String test = outsideDir+File.separator+this.portfolioUuidPreliminaire+File.separator+tmpFileName; // File file = new File(outsideDir+File.separator+this.portfolioUuidPreliminaire+File.separator+tmpFileName); File file = new File(fullPath); // server backend // fileserver String backend = session.getServletContext().getInitParameter("backendserver"); if (resolved != null) { /// Have to send it in FORM, compatibility with regular file posting PostForm.sendFile(sessionval, backend, user, resolved, lang, file); /// No need to fetch resulting ID, since we provided it /* InputStream objReturn = connect.getInputStream(); StringWriter idResponse = new StringWriter(); IOUtils.copy(objReturn, idResponse); fileid = idResponse.toString(); //*/ } /* if(tmpUuid.toString().equals(uuid)) this.putFile(uuid,lang,tmpFileName,outsideDir,tmpMimeType,extension,b.length,b,userId); //*/ } catch (Exception ex) { // Le nom du fichier ne commence pas par un UUID, // ce n'est donc pas une ressource ex.printStackTrace(); } } File zipfile = new File(filename); zipfile.delete(); File zipdir = new File(outsideDir + this.portfolioUuidPreliminaire + File.separator); zipdir.delete(); return portfolioUuid; }
From source file:net.sourceforge.stripes.controller.multipart.CommonsMultipartWrapper.java
/** * Pseudo-constructor that allows the class to perform any initialization necessary. * * @param request an HttpServletRequest that has a content-type of multipart. * @param tempDir a File representing the temporary directory that can be used to store * file parts as they are uploaded if this is desirable * @param maxPostSize the size in bytes beyond which the request should not be read, and a * FileUploadLimitExceeded exception should be thrown * @throws IOException if a problem occurs processing the request of storing temporary * files//from ww w . j a va2 s. c om * @throws FileUploadLimitExceededException if the POST content is longer than the * maxPostSize supplied. */ @SuppressWarnings("unchecked") public void build(HttpServletRequest request, File tempDir, long maxPostSize) throws IOException, FileUploadLimitExceededException { try { this.charset = request.getCharacterEncoding(); DiskFileItemFactory factory = new DiskFileItemFactory(); factory.setRepository(tempDir); ServletFileUpload upload = new ServletFileUpload(factory); upload.setSizeMax(maxPostSize); List<FileItem> items = upload.parseRequest(request); Map<String, List<String>> params = new HashMap<String, List<String>>(); for (FileItem item : items) { // If it's a form field, add the string value to the list if (item.isFormField()) { List<String> values = params.get(item.getFieldName()); if (values == null) { values = new ArrayList<String>(); params.put(item.getFieldName(), values); } values.add(charset == null ? item.getString() : item.getString(charset)); } // Else store the file param else { files.put(item.getFieldName(), item); } } // Now convert them down into the usual map of String->String[] for (Map.Entry<String, List<String>> entry : params.entrySet()) { List<String> values = entry.getValue(); this.parameters.put(entry.getKey(), values.toArray(new String[values.size()])); } } catch (FileUploadBase.SizeLimitExceededException slee) { throw new FileUploadLimitExceededException(maxPostSize, slee.getActualSize()); } catch (FileUploadException fue) { IOException ioe = new IOException("Could not parse and cache file upload data."); ioe.initCause(fue); throw ioe; } }
From source file:net.ymate.platform.mvc.web.support.FileUploadHelper.java
/** * ??????//w w w . j av a 2 s . c o m * * @throws FileUploadException */ private UploadFormWrapper UploadFileAsDiskBased() throws FileUploadException { DiskFileItemFactory _factory = new DiskFileItemFactory(); _factory.setRepository(this.__uploadTempDir); _factory.setSizeThreshold(this.__sizeThreshold); ServletFileUpload _upload = new ServletFileUpload(_factory); _upload.setFileSizeMax(this.__fileSizeMax); _upload.setSizeMax(this.__sizeMax); if (this.__listener != null) { _upload.setProgressListener(this.__listener); } UploadFormWrapper _form = new UploadFormWrapper(); Map<String, List<String>> tmpParams = new HashMap<String, List<String>>(); Map<String, List<UploadFileWrapper>> tmpFiles = new HashMap<String, List<UploadFileWrapper>>(); // List<FileItem> _items = _upload.parseRequest(this.__request); for (FileItem _item : _items) { if (_item.isFormField()) { List<String> _valueList = tmpParams.get(_item.getFieldName()); if (_valueList == null) { _valueList = new ArrayList<String>(); tmpParams.put(_item.getFieldName(), _valueList); } try { _valueList.add(_item.getString(WebMVC.getConfig().getCharsetEncoding())); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } else { List<UploadFileWrapper> _valueList2 = tmpFiles.get(_item.getFieldName()); if (_valueList2 == null) { _valueList2 = new ArrayList<UploadFileWrapper>(); tmpFiles.put(_item.getFieldName(), _valueList2); } _valueList2.add(new UploadFileWrapper(_item)); } } // for (Entry<String, List<String>> entry : tmpParams.entrySet()) { String key = entry.getKey(); List<String> value = entry.getValue(); _form.getFieldMap().put(key, value.toArray(new String[value.size()])); } for (Entry<String, List<UploadFileWrapper>> entry : tmpFiles.entrySet()) { String key = entry.getKey(); _form.getFileMap().put(key, entry.getValue().toArray(new UploadFileWrapper[entry.getValue().size()])); } return _form; }
From source file:net.ymate.platform.webmvc.util.FileUploadHelper.java
/** * ??????/* ww w .j a va2 s . c o m*/ * * @throws FileUploadException ? */ private UploadFormWrapper UploadFileAsDiskBased() throws FileUploadException { DiskFileItemFactory _factory = new DiskFileItemFactory(); _factory.setRepository(__uploadTempDir); _factory.setSizeThreshold(__sizeThreshold); // ServletFileUpload _upload = new ServletFileUpload(_factory); _upload.setFileSizeMax(__fileSizeMax); _upload.setSizeMax(__sizeMax); if (__listener != null) { _upload.setProgressListener(__listener); } UploadFormWrapper _form = new UploadFormWrapper(); Map<String, List<String>> tmpParams = new HashMap<String, List<String>>(); Map<String, List<UploadFileWrapper>> tmpFiles = new HashMap<String, List<UploadFileWrapper>>(); // List<FileItem> _items = _upload.parseRequest(__request); for (FileItem _item : _items) { if (_item.isFormField()) { List<String> _valueList = tmpParams.get(_item.getFieldName()); if (_valueList == null) { _valueList = new ArrayList<String>(); tmpParams.put(_item.getFieldName(), _valueList); } try { _valueList.add(_item.getString(__charsetEncoding)); } catch (UnsupportedEncodingException e) { __LOG.warn("", RuntimeUtils.unwrapThrow(e)); } } else { List<UploadFileWrapper> _valueList = tmpFiles.get(_item.getFieldName()); if (_valueList == null) { _valueList = new ArrayList<UploadFileWrapper>(); tmpFiles.put(_item.getFieldName(), _valueList); } _valueList.add(new UploadFileWrapper(_item)); } } // for (Map.Entry<String, List<String>> entry : tmpParams.entrySet()) { _form.getFieldMap().put(entry.getKey(), entry.getValue().toArray(new String[entry.getValue().size()])); } for (Map.Entry<String, List<UploadFileWrapper>> entry : tmpFiles.entrySet()) { _form.getFileMap().put(entry.getKey(), entry.getValue().toArray(new UploadFileWrapper[entry.getValue().size()])); } return _form; }
From source file:neu.edu.lab08.HomeController.java
@RequestMapping(value = "/createpatient", method = RequestMethod.POST) public String createpatient(Model model, HttpServletRequest request, HttpServletResponse response) throws Exception { // String name = request.getParameter("name"); // String gender = (request.getParameter("gender")); // String dob = request.getParameter("dob"); // String insurance= request.getParameter("insurance"); // Integer amount = Integer.parseInt(request.getParameter("amount")); HttpSession session = request.getSession(); String username = (String) session.getAttribute("username"); String name = (String) session.getAttribute("name"); String gender = (String) session.getAttribute("gender"); String dob = (String) session.getAttribute("dob"); String insurance = (String) session.getAttribute("insurance"); Integer amount = (Integer) session.getAttribute("amount"); Session hibernateSession = HibernateUtil.getSessionFactory().openSession(); hibernateSession.beginTransaction(); String fileName = null;/*from ww w .j a v a2 s . com*/ File file; int maxFileSize = 5000 * 1024; int maxMemSize = 5000 * 1024; String filePath = "/Users/mengqingwang/Downloads/lab08/src/main/webapp/resources/picture"; // ? String contentType = request.getContentType(); if ((contentType.indexOf("multipart/form-data") >= 0)) { DiskFileItemFactory factory = new DiskFileItemFactory(); // factory.setSizeThreshold(maxMemSize); // ? maxMemSize. factory.setRepository(new File("c:\\temp")); // ?? ServletFileUpload upload = new ServletFileUpload(factory); // ? upload.setSizeMax(maxFileSize); try { // ?? List fileItems = upload.parseRequest(request); // ? Iterator i = fileItems.iterator(); while (i.hasNext()) { FileItem fi = (FileItem) i.next(); if (!fi.isFormField()) { // ?? String fieldName = fi.getFieldName(); fileName = fi.getName(); //String fileNamePath = "\\images\\"+fileName; boolean isInMemory = fi.isInMemory(); long sizeInBytes = fi.getSize(); // if (fileName.lastIndexOf("\\") >= 0) { file = new File(filePath, fileName.substring(fileName.lastIndexOf("\\"))); } else { file = new File(filePath, fileName.substring(fileName.lastIndexOf("\\") + 1)); } fi.write(file); } } } catch (Exception ex) { System.out.println(ex); } if (insurance.equals("Insured")) { InsuredPatient ip = new InsuredPatient(); ip.setName(name); ip.setGender(gender); ip.setDob(dob); ip.setPatienttype(insurance); ip.setPicture(fileName); ip.setHospital(username); ip.setInsuredamount(amount); ip.setStatus(1); hibernateSession.save(ip); hibernateSession.getTransaction().commit(); } else if (insurance.equals("Uninsured")) { UninsuredPatient up = new UninsuredPatient(); up.setName(name); up.setGender(gender); up.setDob(dob); up.setPatienttype(insurance); up.setPicture(fileName); up.setHospital(username); up.setAccount(amount); up.setStatus(1); hibernateSession.save(up); hibernateSession.getTransaction().commit(); } } return "hospitalMenu"; }
From source file:ngse.org.FileUploadServlet.java
static protected String FileUpload(Map<String, String> fields, List<String> filesOnServer, HttpServletRequest request, HttpServletResponse response) { boolean isMultipart = ServletFileUpload.isMultipartContent(request); // Create a factory for disk-based file items DiskFileItemFactory factory = new DiskFileItemFactory(); int MaxMemorySize = 200000000; int MaxRequestSize = MaxMemorySize; String tmpDir = System.getProperty("TMP", "/tmp"); factory.setSizeThreshold(MaxMemorySize); factory.setRepository(new File(tmpDir)); ServletFileUpload upload = new ServletFileUpload(factory); upload.setHeaderEncoding("utf8"); upload.setSizeMax(MaxRequestSize);/*from ww w. j av a2s . c om*/ try { List<FileItem> items = upload.parseRequest(request); // Process the uploaded items Iterator<FileItem> iter = items.iterator(); while (iter.hasNext()) { FileItem item = iter.next(); if (item.isFormField()) {//k -v String name = item.getFieldName(); String value = item.getString("utf-8"); fields.put(name, value); } else { String fieldName = item.getFieldName(); String fileName = item.getName(); if (fileName == null || fileName.length() < 1) { return "file name is empty."; } String localFileName = ServletConfig.fileServerRootDir + File.separator + "tmp" + File.separator + fileName; String contentType = item.getContentType(); boolean isInMemory = item.isInMemory(); long sizeInBytes = item.getSize(); File uploadedFile = new File(localFileName); item.write(uploadedFile); filesOnServer.add(localFileName); } } return "success"; } catch (FileUploadException e) { e.printStackTrace(); return e.getMessage(); } catch (Exception e) { e.printStackTrace(); return e.getMessage(); } }
From source file:ngse.org.FileUploadTool.java
static public String FileUpload(Map<String, String> fields, List<String> filesOnServer, HttpServletRequest request, HttpServletResponse response) { boolean isMultipart = ServletFileUpload.isMultipartContent(request); // Create a factory for disk-based file items DiskFileItemFactory factory = new DiskFileItemFactory(); int MaxMemorySize = 10000000; int MaxRequestSize = MaxMemorySize; String tmpDir = System.getProperty("TMP", "/tmp"); System.out.printf("temporary directory:%s", tmpDir); // Set factory constraints factory.setSizeThreshold(MaxMemorySize); factory.setRepository(new File(tmpDir)); // Create a new file upload handler ServletFileUpload upload = new ServletFileUpload(factory); upload.setHeaderEncoding("utf8"); // Set overall request size constraint upload.setSizeMax(MaxRequestSize);//from w w w .j a va 2 s.c om // Parse the request try { List<FileItem> items = upload.parseRequest(request); // Process the uploaded items Iterator<FileItem> iter = items.iterator(); while (iter.hasNext()) { FileItem item = iter.next(); if (item.isFormField()) {//k -v String name = item.getFieldName(); String value = item.getString("utf-8"); fields.put(name, value); } else { String fieldName = item.getFieldName(); String fileName = item.getName(); if (fileName == null || fileName.length() < 1) { return "file name is empty."; } String localFileName = ServletConfig.fileServerRootDir + File.separator + "tmp" + File.separator + fileName; System.out.printf("upload file:%s", localFileName); String contentType = item.getContentType(); boolean isInMemory = item.isInMemory(); long sizeInBytes = item.getSize(); File uploadedFile = new File(localFileName); item.write(uploadedFile); filesOnServer.add(localFileName); } } return "success"; } catch (FileUploadException e) { e.printStackTrace(); return e.toString(); } catch (Exception e) { e.printStackTrace(); return e.toString(); } }