我是一名Java EE webapp开发者(使用spring、hibernate、jsf、primefaces),我发现在primefaces组件DataTable中存在问题。这个问题涉及到列排序,特别是对于带有特殊字符的单词的排序。
在我的语言中(捷克语),我们使用像(č、ř、ž等)这样的字符,以这些字符开头的单词会被排在表格的末尾。这就是问题所在。它们应该按照适当的字母排序,例如,“č”应该在“c”之后,“ř”应该在“r”之后,而不是在没有特殊字符的所有记录之后排序。
我已经使用了Spring Framework提供的CharacterEncoding过滤器,它应该将字符集(UTF-8)强制应用到每个请求和响应中。但它并没有解决这个问题。以下是过滤器的配置:
有没有一种方法可以纠正这种行为?
在我的语言中(捷克语),我们使用像(č、ř、ž等)这样的字符,以这些字符开头的单词会被排在表格的末尾。这就是问题所在。它们应该按照适当的字母排序,例如,“č”应该在“c”之后,“ř”应该在“r”之后,而不是在没有特殊字符的所有记录之后排序。
我已经使用了Spring Framework提供的CharacterEncoding过滤器,它应该将字符集(UTF-8)强制应用到每个请求和响应中。但它并没有解决这个问题。以下是过滤器的配置:
<filter>
<filter-name>charEncodingFilter</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>
有没有一种方法可以纠正这种行为?