2012-02-21 29 views

Trả lời

9

Bạn chỉ có thể chuyển vào một phiên bản java.io.File. Về bản chất, đây là thành phần của thành phần tệp Camel (mặc dù nó được đặt bên trong một WrappedFile, mã chia sẻ do có các thành phần ftp).

Bạn có thể dĩ nhiên cũng chỉ lưu trữ tên của tập tin như một String, và sau đó từ việc tiếp cận xử lý các tập tin, hoặc bằng cách

String name = exchange.getIn().getBody(String.class); 
File file = new File(name); 
... 
FileInputStream fis = new FileInputStream(file); 
// read the file from the stream, etc. 
+3

Hãy để tôi xem liệu tôi hiểu bạn một cách chính xác. Camel không ** không tải nội dung của tập tin vào tin nhắn khi nó tiêu thụ nó, nhưng thay vì chuyển một 'File' (được bọc bên trong một đối tượng' WrappedFile')? Và khi tôi yêu cầu cơ thể như một 'byte []' ('exchange.getIn(). GetBody (byte []. Class)'), _then_ nó tải cơ thể? – Tonio

+4

Đúng vậy. Nội dung của tệp được tải theo yêu cầu. –

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