| |
|
|
Just because you are using XML does not mean you can properly send and receive
localized content using AJAX requests. To provide internationalized AJAX
components you need to do the following: * Set the charset of the page to an
encoding that is supported by your target languages. I tend to use UTF-8
because it covers the most languages. The following meta declaration in a
HTML/JSP page will set the content type: * In the page JavaScript make sure to
encode any parameters sent to the server. JavaScript provides the escape()
function which returns Unicode escape strings in which localized text will
appear in hexadecimal format. For more details on JavaScript encoding see
Comparing escape(), encodeURI(), and encodeURIComponent(). * On the server-side
component set the character encoding using the
HttpServletRequest.setCharacterEncoding() method. Before you access the
localized parameter using the HttpServletRequest.getParameter() call. In the
case of UTF this would be request.setCharactherEncoding("UTF-8");. A
server-side component returning AJAX responses needs to set the encoding of the
response to the same encoding used in the page.
response.setContentType("text/xml;charset=;UTF-8");
response.getWriter().write("
invalid "); For more information on using AJAX with Java
Enterprise Edition technologies see AJAX and Internationalization and for
developing multi-lingual applications see Developing Multilingual Web
Applications Using JavaServer Pages Technology.
|
|