On 8/29/2014 9:15 AM, Garret Wilson wrote:
...
So here is the problem: something is taking the string generated by
the message (which was parsed correctly from the properties file) and
writing it to the output stream, not in UTF-8 as it should, but in
some other encoding.
Hmmm... the sequence of events would have to be a little more
complicated than that. If somehow the properties file were being read as
UTF-8 (it shouldn't be), then when U+00A9 it would be mapped to the
replacement character U+FFFD. Then if /that/ UTF-8 stream were in turn
interpreted as cp1252/ISO-8859-1, then it would produce the sequence
�, which I'm seeing. But that would require two levels of errors, it
would seem. And the code looks like the properties file is being read
correctly in IsoPropertiesFilePropertiesLoader.
(Maybe something is being cached in the system encoding, and then being
read from the cache using UTF-8.)
So I can sense the problem here, but I don't yet see where it's
happening in the code. As soon as I'm able to trace the code, I would
imagine I could find it pretty quickly.
Garret