2013-05-14 39 views
7

Tôi cố gắng viết tệp tạm thời từ ứng dụng tomcat 7.0. Nó không thành công:Viết tệp tạm thời trong tomcat 7.0 không thành công

Servlet đoạn mã:

File formFile = File.createTempFile("document", ".pdf"); 

Exception

java.io.IOException: No such file or directory 
    at java.io.UnixFileSystem.createFileExclusively(Native Method) 
    at java.io.File.createTempFile(File.java:1879) 
    at java.io.File.createTempFile(File.java:1923) 
    at goGet(ServletTest.java:20)} 

Tôi đoán catalina.policy là trong đường đi. Làm cách nào để bật các tệp tạm thời cho Ứng dụng web?

+2

Bạn nên ** không bao giờ ** tạo tệp trong thư mục cài đặt Tomcat của bạn cũng như trong một số đường dẫn của thư mục ứng dụng web của bạn. Bạn nên có một thư mục chuyên dụng để lưu trữ các tệp này và thư mục * temp * nơi bạn sẽ lưu trữ các tệp tạm thời. –

+0

Tại sao tôi không nên sử dụng phương pháp JDK để tạo các tệp tạm thời? – user2088476

+1

Tôi chưa bao giờ nói bạn không sử dụng JDK để tạo các tệp tạm thời. Tôi nói rằng bạn không được tạo ra chúng cũng như trong thư mục cài đặt tomcat của bạn cũng như trong thư mục triển khai ứng dụng web của bạn (cũng không phải trong bất kỳ thư mục con nào của nó). Tạo một thư mục ở đâu đó trong đĩa của bạn bên ngoài các thư mục này, cung cấp cho người dùng đủ quyền để tạo tệp mới và sau đó tạo tệp mới của bạn ở đó. –

Trả lời

2

Tôi đã tìm thấy sự cố: thư mục tạm thời bị thiếu trong tomcat.

4

Tomcat thiếu thư mục tạm thời.

Vấn đề trên đã được khắc phục trên tomcat bằng cách tạo thư mục tạm thời trong thư mục cơ sở tomcat (cataline_home directory).

+0

bắt đầu từ phiên bản nào? – user2088476

Các vấn đề liên quan