我有一些国际化的困境:
我的UTF-8字符串字段在浏览器中呈现为????从数据库返回后。
使用Hibernate从数据库中检索后,使用eclipse调试器在检查时正确显示String字段。
然而Struts2 / Tiles将这些字符串呈现为????在发送到浏览器的HTML中。
charset指令出现在HTML标头中:
也许我需要在struts2或tile配置中添加一些东西?
答案 0 :(得分:1)
我们所有的瓷砖响应都是由一个忽略
的本土servlet提供的 <%@ page contentType="text/html; charset=UTF-8" %>
指令(谁知道还有什么)。
TilesDispatchExtensionServlet
:血腥的建筑宇航员,我握拳。
答案 1 :(得分:0)
尝试在&lt; html /&gt;上设置lang属性元件。
HTML示例:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html lang="ja">
XHTML示例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">
答案 2 :(得分:0)
你可以尝试这样的事情。
它取自Character Sets and Encodings上的太阳页面。 我认为这必须是你jsp中的第一行。
<%@ page contentType="text/html; charset=UTF-8" %>
答案 3 :(得分:0)
您需要使用过滤器。参见: