Hi, I have the following route which sends a file from my local file system via FTP to a folder that does not yet exist on the remote server.
ctx.addRoutes( new RouteBuilder() { @Override public void configure() throws Exception { from( "file://target/in?recursive=true&delay=5000") .to( "ftp://account:secret@host//target/out/?fileName=${file:name}&tempFileName= ${file:onlyname}.part&stepwise=false"); } } ); The route uses the tempFileName URI option to create a temp file which is then renamed after the transfer is complete. On Linux the route works correctly, but on Windows the .part file is not being created on the FTP server in the correct sub-folder relative to the FTP directory name, but instead is created in the root FTP directory. Camel then attempts to the rename the file, but if the actual destination folder does not exist, a "Cannot rename File from :...." GenericFileOperationFailedException is thrown. I think the problem is in the createTempFileName() on the GenericFileProducer which calculates the temp file destination by looking for the last file separator on the fileName. The File separator being defined as '/' on the producer sub-class, but the original file name still contains the windows file separator. This seems to mess up the calculation of the the tempName. Not sure if I'm using the DSL correctly, or I can tweak my route to get the desired behaviour? Cheers, Dave. -- View this message in context: http://camel.465427.n5.nabble.com/FTP-temp-file-not-being-created-correctly-on-Windows-Camel-2-7-2-tp4591581p4591581.html Sent from the Camel - Users mailing list archive at Nabble.com.