Sto cercando di elaborare file di grandi dimensioni utilizzando Camel e sono preoccupato che si "adattino" al corpo di un Camel Message
. C'è un modo in cui posso semplicemente passare il nome (percorso) del file come corpo del messaggio, e poi in un processore usarlo per leggere dal disco?Cammello: componente "file", ma solo il nome del file di passaggio come corpo
6
A
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.
Problemi correlati
- 1. Come ottenere solo il nome del file nel preprocessore?
- 2. nome metodo cammello nome
- 3. Come recuperare solo il nome file dalla finestra di dialogo di salvataggio del file
- 4. Come ottenere solo il nome file con il caricamento del file Jersey
- 5. Estrai solo il nome del file da FileItem's name
- 6. Aggiornamento componente dopo il download del file
- 7. Come grep mostra solo percorso/nome file?
- 8. log4net: come impostare dinamicamente il nome del file del logger?
- 9. Come recuperare il nome file logico del database dal file di backup
- 10. Come estrarre il nome del file dal nome del percorso del file?
- 11. PHP, ottenere il nome del file senza estensione di file
- 12. Come catturare i dettagli dell'evento di copia/spostamento del file, come il nome del file sorgente
- 13. utilizzando il parser del corpo per passare il file zip
- 14. Invio di file direttamente dal browser a S3 ma modifica del nome del file
- 15. Rendere felice il cammello in caso di conversione del cammello
- 16. Override file del componente core di Joomla
- 17. File di caricamento di PrimeFaces che mostra il nome del file dopo il caricamento
- 18. VI aperto con il nome del file passato
- 19. nome file o nome file?
- 20. Modello consumatore file cammello - thread rimanenti attivi
- 21. Logstash: come aggiungere il nome del file come campo?
- 22. _CRTDBG_MAP_ALLOC non mostra il nome del file
- 23. PyQt: acquisizione del nome file per il file eliminato nell'app
- 24. Come ottenere il nome del file di input in MRjob
- 25. Fare un JFileChooser seleziona il testo del nome del file ma non l'estensione
- 26. Da un file incluso, come posso ottenere il nome file del file facendo il compreso?
- 27. Ottenere il nome del file bitmap
- 28. Specificare il formato del nome del file di output TypeScript
- 29. Express, corpo di rendering del file di layout di giada ma non rendering head
- 30. Come ottenere il nome file (o eliminare un file) utilizzando l'handle del file
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
Sì, è corretto. Il contenuto del file viene caricato su richiesta. –