托管 bean 中的阿拉伯文本 [英] Arabic text in managed bean

查看:23
本文介绍了托管 bean 中的阿拉伯文本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的应用程序中,我使用 Spring、JPA Hibernate、JSF问题是当我写一个阿拉伯语文本并在像 (ÙابÙÙÙ) 的 manged Bean 中找到它时我使用 Tomcat v 7.0 服务器

In my application I use Spring, JPA Hibernate, JSF the problem is when I write an Arabic text and find it in manged Bean like (ÙابÙÙÙ) I use Tomcat v 7.0 Server

Web.xml

<filter>
    <filter-name>encoding-filter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>utf-8</param-value>
    </init-param>
    <init-param>
        <param-name>forceEncoding</param-name>
        <param-value>true</param-value>
    </init-param>
</filter>

<filter-mapping>
    <filter-name>encoding-filter</filter-name>
    <url-pattern>/*</url-pattern>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
</filter-mapping>

形式是

<h:form dir="rtl" acceptcharset="UTF-8">

头前

<?xml version="1.0" encoding="UTF-8"?>

在页首.

<f:view locale="TR" encoding="UTF-8" contentType="text/html" />
<meta http-equiv="content-type" content="text/html;charset=utf-8" />

我在托管 bean 中使用 @Named @MangedBean@Component 也不对.

I use @Named in managed bean @MangedBean and @Component are not right too.

MySQL 数据库很好,我从中正确读取了阿拉伯文本.

MySQL database are good I read from it Arabic text correctly.

在构造函数中,

HttpServletRequest req = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
HttpServletResponse res = (HttpServletResponse) FacesContext.getCurrentInstance().getExternalContext().getResponse();

try {
    req.setCharacterEncoding("UTF-8");
    res.setCharacterEncoding("UTF-8");
} catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

请提供任何提示以获取有效的阿拉伯语文本.提前致谢.

Please any hint to take a valid Arabic text. Thanks in advance.

推荐答案

解决了我使用tomcat编码过滤器的问题

i solve the problem when i used tomcat encoding filter

<filter>
    <filter-name>SetCharacterEncoding</filter-name>
    <filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class>
    <init-param>
        <param-name>encoding</param-name>
        <param-value>UTF-8</param-value>
    </init-param>
    <init-param>
        <param-name>ignore</param-name>
        <param-value>false</param-value>
    </init-param>
</filter>
<filter>
    <filter-name>Conversation</filter-name>
    <filter-class>org.jboss.weld.servlet.ConversationFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>SetCharacterEncoding</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
    <filter-name>Conversation</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

这篇关于托管 bean 中的阿拉伯文本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆