commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martin Cooper" <mart...@apache.org>
Subject Re: File Upload and request parameters
Date Thu, 30 Oct 2008 00:27:41 GMT
On Wed, Oct 29, 2008 at 5:10 PM, sim123 <sim3159@gmail.com> wrote:

>
> Hello,
>
> I am using FileUpload for multipart request handling, my request
> contains three different parameter and one file, I want to read those
> parameters first and then read the file as those paramters construct
> directory where this file needs to be stored


The order of the fields in the form you are submitting determines the order
in which those fields occur in the byte stream that FileUpload is reading.
If you need the file to be last, you'll need to reorder the fields in your
HTML form.

--
Martin Cooper



> , here is the code
>
> protected void doPost(HttpServletRequest request, HttpServletResponse
> response) throws ServletException {
>               int dir1 = 0 ;
>               int dir2 = 0 ;
>               int dir3 = 0;
>               String uploadLocation = null;
>               String fileName = null;
>               // parse request
>               if(ServletFileUpload.isMultipartContent(request)){
>                       ServletFileUpload upload = new ServletFileUpload();
>                       try {
>                               FileItemIterator iterator =
> upload.getItemIterator(request);
>                               while(iterator.hasNext()){
>                                       FileItemStream item =
> iterator.next();
>                                       String name = item.getFieldName();
>                                       InputStream stream =
> item.openStream();
>                                       if(item.isFormField()){
>                                               if("dir1".equals(name)){
>                                                       dir1 =
> Integer.parseInt(Streams.asString(stream));
>                                               }else
> if("dir2".equals(name)){
>                                                       dir2 =
> Integer.parseInt(Streams.asString(stream));
>                                               }else
> if("dir3".equals(name)){
>                                                       dir3 =
> Integer.parseInt(Streams.asString(stream));
>                                               }
>                                               uploadLocation =
>
> server_url+File.separatorChar+tenantId+File.separatorChar+collectionId+File.separatorChar+rowId
> ;
>                               new File(uploadLocation).mkdirs();
>                                               }else {
>
> System.out.println("File field" + name + "with file name" +
> item.getName());
>                                                       fileName =
> item.getName();
>                                                       //perform file
> storing operations
>
>                               File uploadedFile = new
> File(uploadLocation+File.separatorChar+fileName);
>
>                               FileOutputStream outputstream = new
> FileOutputStream(uploadedFile);
>                               long number = Streams.copy(testStream,
> outputstream, true);
>                               System.out.println("result from outpoutstream
> operation" + number);
>                                       }
>
>                               }
>
>
>
>                       } catch (FileUploadException e) {
>                               // TODO Auto-generated catch block
>                               e.printStackTrace();
>                       } catch (IOException e) {
>                               // TODO Auto-generated catch block
>                               e.printStackTrace();
>                       } catch(NumberFormatException e){
>                               e.printStackTrace();
>                       }
>               }
>
>   }
>
>
> however for some reason FileItem is being read first so I can not
> store this file at desired location it is (/usr/sim/0/0/0/filename),
> can some one please suggest how can I make sure that I read form item
> first then file items.
>
> I do appreciate all the help and time. Thanks
>
> -sim
> --
> View this message in context:
> http://www.nabble.com/File-Upload-and-request-parameters-tp20238511p20238511.html
> Sent from the Commons - User mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> For additional commands, e-mail: user-help@commons.apache.org
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message