繁体   English   中英

JSF ISO-8859-2字符集

[英]JSF ISO-8859-2 charset

我在jsf页面上设置适当的字符集时遇到问题。 我将MySql db与latin2(ISO-8859-2字符集)和latin2_croatian_ci排序规则一起使用。 但是,我在设置有关支持托管bean属性的值时遇到问题。

页面顶部的Page指令是:

<%@ page language="java" pageEncoding="ISO-8859-2" contentType="text/html; charset=ISO-8859-2" %>

在脑海中,我包括:

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-2">

我的表单标签是:

<h:form id="entityDetails" acceptcharset="ISO-8859-2">

我已经使用以下doFilter方法实现在web.xml中创建并注册了Filter:

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
    request.setCharacterEncoding("ISO-8859-2");
    response.setCharacterEncoding("ISO-8859-2");
    chain.doFilter(request, response);
}

但是,即当我通过inputText设置托管bean属性时,所有特殊(unicode)字符都被替换为'?'。 字符。

我真的没有其他想法如何将字符集设置为良好的页面。 有什么建议么?

提前致谢。

我所做的记录令人误解。 原来,stdout用'?'替换了特殊字符。 字符。 但是,写入db的字符也被替换为'?'。 标志。 问题的另一部分是尚未为正确的编码设置JConnector,因此数据库条目看起来非常类似于记录的属性。 我没有意识到这是两个问题的结合。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM