Greetings:
I am evaluating Mirth as a possible replacement for the HL7 messaging system that we are currently using. I thought that I might start with something simple, like having a File Reader source and a File Writer destination and make sure that the message went through the system with modification.
My test environment is a Ubuntu Linux 6.10 system, running Sun Java 1.5_08, and Mirth 1.4.
I started with some HL7 messages that we have stored in files. The messages were originally created on a Linux system, so the end-of-line character is a line-feed (0x0A). I tried to leave the settings as close to the default as possible. I set up the Source as a File Reader. I set up the Destination as a File Writer, with the Template set to ${message.encodedData}. Then I dumped 50 message files into the source directory.
All 50 appeared in the destination directory. They were identical to the input files (which is what I was looking for) except for the fact that the EOL characters had been changed from the Unix EOL (0x0A) to the old MAC EOL (0x0D). I tried changing the encoding type but it did not effect the output.
I went back and changed the Destination template to ${message.rawData}. I ran the original 50 messages through again, and got the same EOL replacement behavior.
I then installed Java 1.5 update 11 and Mirth 1.4 onto a Windows XP system. I exported the channel and imported it onto that machine. Putting the same 50 messages into the inbound directory on the Windows XP system produced the same output - EOL characters changed from 0x0A to 0x0D.
I'm not sure where to go from here. I could see Mirth changing the EOL from the Unix EOL to the Windows EOL on the Windows installation, but I can't see why both of them would change it to 0x0D. Our existing solution (written in Perl,) writes files using the EOL characters native to the platform that it is running on (0x0A on Linux, 0x0D0A on Windows).
Any input would be appreciated.
-Scott
I am evaluating Mirth as a possible replacement for the HL7 messaging system that we are currently using. I thought that I might start with something simple, like having a File Reader source and a File Writer destination and make sure that the message went through the system with modification.
My test environment is a Ubuntu Linux 6.10 system, running Sun Java 1.5_08, and Mirth 1.4.
I started with some HL7 messages that we have stored in files. The messages were originally created on a Linux system, so the end-of-line character is a line-feed (0x0A). I tried to leave the settings as close to the default as possible. I set up the Source as a File Reader. I set up the Destination as a File Writer, with the Template set to ${message.encodedData}. Then I dumped 50 message files into the source directory.
All 50 appeared in the destination directory. They were identical to the input files (which is what I was looking for) except for the fact that the EOL characters had been changed from the Unix EOL (0x0A) to the old MAC EOL (0x0D). I tried changing the encoding type but it did not effect the output.
I went back and changed the Destination template to ${message.rawData}. I ran the original 50 messages through again, and got the same EOL replacement behavior.
I then installed Java 1.5 update 11 and Mirth 1.4 onto a Windows XP system. I exported the channel and imported it onto that machine. Putting the same 50 messages into the inbound directory on the Windows XP system produced the same output - EOL characters changed from 0x0A to 0x0D.
I'm not sure where to go from here. I could see Mirth changing the EOL from the Unix EOL to the Windows EOL on the Windows installation, but I can't see why both of them would change it to 0x0D. Our existing solution (written in Perl,) writes files using the EOL characters native to the platform that it is running on (0x0A on Linux, 0x0D0A on Windows).
Any input would be appreciated.
-Scott
Comment