OK. I have a simple test case and all seems to be well. See the end of this
message for the contents of my test files.
My environment:
Win XP SP2 - brave I know but all has been OK so far ;)
JDK 1.4.2_05
Tomcat 5.0 branch, HEAD (latest) from CVS (very close to 5.0.28)
Points to note:
1. All my test files are ASCII files.
2. I had all sorts of problems with non-ASCII properties files. I didn't get to
the bottom of it but I think Windows was adding junk to the start of the file if
it was UTF-8 encoded. Maybe having the first line as a comment would fix this
but I haven't tested this.
3. There were times where Eclipse and Windows were reporting the exact same file
as having different encodings. There is something odd here but I didn't look at
this any further.
4. I had property file issues with 4.1.HEAD as well as 5.0.HEAD.
5. The downside of using ASCII files is that entering the UTF-8 characters by
hand is a real pain. A simple conversion app should fix this though.
6. Apart from the property file issue, everything seems fine.
Test files follow.
Hope this helps,
Mark
PS I noticed that you cross-posted to the dev list. Please don't do this. Any
message cross-posted is less likely rather than more likely to get a response.
======= utf8.jsp ========
<%@ page language="java" import="java.lang.*,java.util.*"
contentType="text/html; charset=UTF-8" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>UTF-8 Encoding issue</title>
</head>
<body>
<p>Text from JSP page (which is ASCII encoded).</p>
<form action="utf8.jsp" method="post">
<p>English<input type="radio" value="en" name="language" ></p>
<p>Japanese<input type="radio" value="ja" name="language" ></p>
<input type="submit" value="Post form data" />
</form>
<p>Text from resources bundle:</p>
<%
String language = request.getParameter("language");
if (language == null) {
language="en";
}
Locale locale = null;
if (language.equalsIgnoreCase("en")) {
locale = Locale.ENGLISH;
} else {
locale = Locale.JAPAN;
}
ResourceBundle bundle = ResourceBundle.getBundle("foo.bar.LocalStrings",
locale);
out.println("<p>" + bundle.getString("test") + "</p>");
%>
<p><%=request.getParameter("language") %></p>
</body>
</html>
===== LocalStrings_en.properties =====
test=Test string from resources bundle
===== LocalStrings_ja.properties =====
test=\u30d5\u30a1\u30a4\u30eb\u30ed
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]