2012-03-09 3 views
0

У меня есть веб-приложение, и я пытаюсь вернуть логическое значение .zip-файла, который получает (успешно) сгенерированный на сервере.Java и JSF, Проверка наличия файла на сервере

Локально я запускаю это на Eclipse с Tomcat в Windows, но я развертываю его на Tomcat Server на Linux-машине.

 //.zip is generated successfully on the SERVER by this point 
     File file1 = new File("/Project/zip/theZipFile.zip"); 

     boolean exists = file1.exists();// used to print if the file exists, returns false 
     if (exists) 
      fileLocation = "YES"; 
     else 
      fileLocation = "No"; 

Когда я делаю это, он продолжает возвращаться ложна на отладчик и на моей странице, когда я распечатать его. Я уверен, что это имеет какое-то отношение к пути к файлам, но я не уверен.

Как только я получу подтверждение от zip, я могу легко использовать File.length(), чтобы получить то, что мне нужно.

Предположим, что все геттеры и сеттеры существуют, а печать JSF. В основном это бэкэнд Java, с которым я сталкиваюсь.

Спасибо за помощь! :)

ответ

0

отладки, используя эту инструкцию

System.out.println("Actual file location : " + file1.getAbsolutePath()); 

Это покажет вам полный путь к файлу он ищет

1

Ваш путь не хорошо. Попробуйте удалить руководство/исправить проблему. . Код ошибки для пояснений:

import java.io.*; 
public class TestFile { 

public static void main(String[] args) { 

try { 
//Creates a myfile.txt file in the current directory 
File f1 = new File("myfile.txt"); 
f1.createNewFile(); 
System.out.println(f1.exists()); 

//Creates a myfile.txt file in a sub-directory 
File f2 = new File("subdir/myfile.txt"); 
f2.createNewFile(); 
System.out.println(f2.exists()); 

//Throws an IOException because of the leading/
File f3 = new File("/subdir/myfile.txt"); 
f3.createNewFile(); 
System.out.println(f3.exists()); 

} catch(IOException e) { 
System.out.println(e.getMessage()); 
} 
} 
} 
Смежные вопросы