2012-02-21 4 views

risposta

9

È possibile passare semplicemente un'istanza java.io.File. Questo è essenzialmente ciò che fa il componente del file Camel stesso (sebbene sia inserito all'interno di un WrappedFile, a causa del codice di condivisione con i componenti ftp).

Ovviamente si può anche semplicemente memorizzare il nome del file come stringa e quindi dall'accesso processore file, sia per

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

Fammi vedere se ho capito bene. Camel ** non ** carica il contenuto del file nel messaggio quando lo consuma, ma piuttosto passa un file '(racchiuso all'interno di un oggetto' WrappedFile')? E quando chiedo il corpo come 'byte []' ('exchange.getIn(). GetBody (byte []. Classe)'), _questo_ carica il corpo? – Tonio

+4

Sì, è corretto. Il contenuto del file viene caricato su richiesta. –

Problemi correlati