On 02/07/2010 13:47, Murat Birben wrote: > I've tried apache.commons.fileupload api but the result doesn't change. I > set the selenium waitForPageToLoad prop very small to produce the problem > and when time exceeded test fails and thousands of 0 bytes are generated. > I'll try the oreilly fileupload api too but it seems to me as the reason is > not about the upload api. > > Is there anyone has another idea about this?
It's been a while, since I used commons-file-upload, but I remember the examples being fairly comprehensive. The streaming API seemed nicer to use. I don't remember being forced to write a file to the disk, maybe you can catch the error and not write the file at all. p > On Fri, Jul 2, 2010 at 3:19 PM, Ralph Carlson <racarl...@mediacomcc.com>wrote: > >> you can also try the oreilly file upload api, I have used it in many >> projects without issue >> >> http://www.servlets.com/cos/ (download) >> http://java.itags.org/java-essentials/11012/ (an example) >> ________________________________________ >> From: >> users-return-214291-racarlson=mediacomcc....@tomcat.apache.org[users-return-214291-racarlson= >> mediacomcc....@tomcat.apache.org] On Behalf Of Murat Birben [ >> muratbir...@gmail.com] >> Sent: Friday, July 02, 2010 6:01 AM >> To: Tomcat Users List; p...@pidster.com >> Subject: Re: Tomcat 5.5 creates 0 byte files >> >> Yes 0 byte files are causing the disk to run out of space >> >> @Andre Warnier >> I'm not actually saving files on the server. I just tried to simplify my >> problem and tried that simple code. Now i'll give a try to apache >> fileupload >> api, thanks for advice >> >> On Fri, Jul 2, 2010 at 11:52 AM, Pid <p...@pidster.com> wrote: >> >>> On 02/07/2010 09:43, Murat Birben wrote: >>>> Hi all, >>>> >>>> I have a very simple file upload mechanism in java. I just take the >> file >>> and >>>> save it on the server. I'm testing this simple code with selenium and >>> *when >>>> a timeout occurs in the selenium test *tomcat creates 0 byte files >> under >>>> tomcat_home/work/Catalina/localhost/uploadServlet/ directory as >>> MultiPart* >>>> files. It creates thousands of files, until there is no disk space left >>> on >>>> device. What may cause this problem? How can I solve this? Is there >>> anyone >>>> has an idea about this? >>> >>> Thousands of 0 byte files are causing the disk to run out of space? >>> >>> >>> p >>> >>>> My environment is: Ubuntu - 8.04 server, apache tomcat - 5.5.29, sun >> java >>>> 1.6 >>>> >>>> Thanks, >>>> >>>> Here is the code snippet that i use >>>> >>>> File fFile = null; >>>> FileOutputStream fileOutputStream = null; >>>> FileInputStream fileInputStream = null; >>>> try { >>>> >>>> String strFileName = request.getParameter("FileName"); >>>> String strPath = request.getParameter("Path"); >>>> //String strMediaType = request.getParameter("MediaType"); >>>> >>>> //String strDescription = >>> request.getParameter("Description"); >>>> fFile = (File) request.getAttribute("Content"); >>>> >>>> int index = strPath.length() - 1; //If the user forgets to >>>> put the last / for the path... We put it for him/her >>>> >>>> if (strPath.charAt(index) != '/') { >>>> strPath += "/"; >>>> } >>>> if (!new File(strPath).exists()) { >>>> new File(strPath).mkdirs(); >>>> } >>>> >>>> File file = new File(strPath + strFileName); >>>> fileOutputStream = new FileOutputStream(file); >>>> fileInputStream = new FileInputStream(fFile); >>>> >>>> byte[] bBuf = new byte[1024]; >>>> >>>> int iBufLen = 0; >>>> int iReadLen = 1024; >>>> int iTotelLen = 0; >>>> /*read 1024 bytes at a time*/ >>>> while ((iBufLen = fileInputStream.read(bBuf)) != -1) { >>>> >>>> fileOutputStream.write(bBuf); >>>> fileOutputStream.flush(); >>>> iTotelLen += iBufLen; >>>> if (fileInputStream.available() < iReadLen) { >>>> iReadLen = fileInputStream.available(); >>>> >>>> break; >>>> } >>>> } >>>> >>>> byte[] tempbBuf = new byte[iReadLen]; >>>> fileInputStream.read(tempbBuf, 0, iReadLen); >>>> >>>> fileOutputStream.write(tempbBuf); >>>> >>>> >>>> } catch (IOException ex) { >>>> ex.printStackTrace(); >>>> } finally { >>>> fileOutputStream.close(); >>>> fileInputStream.close(); >>>> >>>> if (fFile.exists()) { >>>> >>>> fFile.delete(); >>>> } >>>> } >>>> >>>> >>>> >>> >>> >>> >> >> >> -- >> Murat BIRBEN >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org >> For additional commands, e-mail: users-h...@tomcat.apache.org >> >> > >
signature.asc
Description: OpenPGP digital signature