I'm beating my head against the wall here, so I thought I'd ping you to see if you had some insight..
I didn't see a natural area to post this in, so let me know if I should move it somewhere else. My app is
struts based, so....
I've localized my application - it's designed to run as UTF-8. I have bundles for 5 languages -- and the application works perfectly on my local windows box, but when I run it off the UNIX server, *some* of the UTF8 characters don't render (they render as ? marks). I'm positive that the character encoding is set correctly, and the browser is correctly detecting the encoding as UTF8. Again, this works 100% on my local box, but not on the server.
I've been eliminating variables as best I can, and now I'm down to something at the OS level? It also doesn't add up that SOME UTF8 encoded text works (Spanish and French letters, which are encoded as UTF8) -- but Asian languages (Traditional Chinese and Japanese) do not...
Completely at a loss.
It's (probably) not a
tomcat setting, since I'm running the same tomcat locally and it works... Grrrr... Could the property files be reading in differently on UNIX vs. Windows?
Java .property files are supposed to be ISO8895-1 encoded - and when I look at it on the UNIX file-system it looks OK...
Any ideas?
If you have an insight I'd appreciate it. I'm happy to provide access to the page I'm working on, just didn't want it posted in a public place (yet
)
Thanks in advance!
Dan
- edit -
A little more information, in case it helps:
1) My dev environment: eclipse 3.5 on windows vista 64
2) All of the property files are using the /uxxxx format to encode the text. I know it's supposed to be an ISO8859-1 file with these /uxxxx characters.
A sample of the bundles:
myBundle_en.properties:
address.city=City
address.country=Country
address.state=State
myBundle_es.properties:
address.city=Ciudad
address.country=Pa\u00eds <--- THIS WORKS EVEN ON UNIX. Odd....
address.state=Estado
myBundle_ja.properties:
address.city=\u753a <--- Renders as ?
address.country=\u56fd <--- Renders as ?
address.state=\u72b6\u614b <--- Renders as ??