Hi,
JMS was designed for guaranteed delivery of messages in a distributed environment and is not always a good choice for file transfer.
The reason being that the filesystem is not transactional so you lose any benefit of JMS transactions. Another issue is that JMS implementations often scale better with lots of small messages, rather than less frequent large ones. Obviously it depends on your usage but files are more likely to run into MB.
Depending on your budget / timescales / profile of the project you may look into 3rd party applications for file management, however if you're still happy to go the JMS route I would do it like this...
1. Use either a BytesMessage or a StringMessage rather than ObjectMessage
2. Read and Write the file in the normal way (e.g. java.io / apache commons FileUtils etc.
3. Watch out for character set and ASCII CR/LF problems
Steve