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 probl=
em
> and when time exceeded test fails and thousands of 0 bytes are generate=
d.
> I'll try the oreilly fileupload api too but it seems to me as the reaso=
n is
> not about the upload api.
>=20
> 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 u=
se.
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 <RACARLSON@mediacomcc.com=
>wrote:
>=20
>> 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=3Dmediacomcc.com@tomcat.apache.org=
[users-return-214291-RACARLSON=3D
>> mediacomcc.com@tomcat.apache.org] On Behalf Of Murat Birben [
>> muratbirben@gmail.com]
>> Sent: Friday, July 02, 2010 6:01 AM
>> To: Tomcat Users List; pid@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 <pid@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 an=
d
>>> *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 l=
eft
>>> 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 =3D null;
>>>> FileOutputStream fileOutputStream =3D null;
>>>> FileInputStream fileInputStream =3D null;
>>>> try {
>>>>
>>>> String strFileName =3D request.getParameter("FileName");=
>>>> String strPath =3D request.getParameter("Path");
>>>> //String strMediaType =3D request.getParameter("MediaTyp=
e");
>>>>
>>>> //String strDescription =3D
>>> request.getParameter("Description");
>>>> fFile =3D (File) request.getAttribute("Content");
>>>>
>>>> int index =3D strPath.length() - 1; //If the user forget=
s to
>>>> put the last / for the path... We put it for him/her
>>>>
>>>> if (strPath.charAt(index) !=3D '/') {
>>>> strPath +=3D "/";
>>>> }
>>>> if (!new File(strPath).exists()) {
>>>> new File(strPath).mkdirs();
>>>> }
>>>>
>>>> File file =3D new File(strPath + strFileName);
>>>> fileOutputStream =3D new FileOutputStream(file);
>>>> fileInputStream =3D new FileInputStream(fFile);
>>>>
>>>> byte[] bBuf =3D new byte[1024];
>>>>
>>>> int iBufLen =3D 0;
>>>> int iReadLen =3D 1024;
>>>> int iTotelLen =3D 0;
>>>> /*read 1024 bytes at a time*/
>>>> while ((iBufLen =3D fileInputStream.read(bBuf)) !=3D -1)=
{
>>>>
>>>> fileOutputStream.write(bBuf);
>>>> fileOutputStream.flush();
>>>> iTotelLen +=3D iBufLen;
>>>> if (fileInputStream.available() < iReadLen) {
>>>> iReadLen =3D fileInputStream.available();
>>>>
>>>> break;
>>>> }
>>>> }
>>>>
>>>> byte[] tempbBuf =3D 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-unsubscribe@tomcat.apache.org
>> For additional commands, e-mail: users-help@tomcat.apache.org
>>
>>
>=20
>=20
|