Reputation: 426
How to make JSF use UTF-8 everywhere? It converts UTF-8 to Win-1252 in form data. Data gets from a bean, I don't use any filters and DB doesn't relate to this problem. JSF 2.2.4, Glassfish 4.0.0.
Before sending:
After (абвг became абвг):
Form data in Chrome:
In JSF debug tool:
Form code:
<h:form>
<h:panelGrid columns="2">
<h:panelGroup>#{m.nickname}</h:panelGroup>
<h:panelGroup>
<h:inputText value="#{register.nickname}" />
</h:panelGroup>
<h:panelGroup>#{m.password}</h:panelGroup>
<h:panelGroup><h:inputSecret value="#{register.password}" /></h:panelGroup>
<h:panelGroup>#{m.shortName}</h:panelGroup>
<h:panelGroup><h:inputText value="#{register.shortName}" /></h:panelGroup>
<h:panelGroup>#{m.email}</h:panelGroup>
<h:panelGroup><h:inputText value="#{register.email}" /></h:panelGroup>
<h:panelGroup />
<h:panelGroup><h:commandButton action="#{register.register}" value="Регистрация" /></h:panelGroup>
</h:panelGrid>
</h:form>
Upvotes: 0
Views: 710
Reputation: 426
Create glassfish-web.xml file with following content:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd">
<glassfish-web-app>
<parameter-encoding default-charset="UTF-8" />
</glassfish-web-app>
Upvotes: 1