У меня очень простой механизм загрузки файлов в Java.Я просто беру файл и сохраняю его на сервере.Я тестирую этот простой код с селеном, и когда в тесте на селен происходит тайм-аут, tomcat создает файлы 0 байт в каталоге tomcat_home / work / Catalina / localhost / uploadServlet / как файлы MultiPart *.Он создает тысячи файлов, пока на устройстве не останется места на диске.Что может вызвать эту проблему?Как я могу решить это?У кого-нибудь есть идеи по этому поводу?
Моя среда: Ubuntu - сервер 8.04, apache tomcat - 5.5.29, sun java 1.6
Спасибо,
Вотфрагмент кода, который я использую
String strFileName = request.getParameter("FileName");
String strPath = request.getParameter("Path");
File fFile = (File) request.getAttribute("Content");
int index = strPath.length() - 1;
if (strPath.charAt(index) != '/') {
strPath += "/";
}
if (! new File(strPath).exists()) {
new File(strPath).mkdirs();
}
File file = new File(strPath + strFileName);
FileOutputStream fileOutputStream = new FileOutputStream(file);
FileInputStream 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);
fileOutputStream.close();
fileInputStream.close();
if (fFile.exists()) {
fFile.delete();
}