I'm trying to process potentially large files using Camel, and am worried about them "fitting" in the body of a Camel Message
. Is there a way I can just pass the name (path) of the file as the body of the message, and then in a processor use that to read from disk?
You can just pass in a java.io.File instance. This is essentially what the Camel file component does itself (although its placed inside a WrappedFile, due sharing code with the ftp components).
You can of course also just store the name of the file as a String, and then from the processor access the file, either by
String name = exchange.getIn().getBody(String.class);
File file = new File(name);
...
FileInputStream fis = new FileInputStream(file);
// read the file from the stream, etc.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With