Article Image
Article Image
read

Você esta lá, criando sua aplicação com Spring, Hibernate e afins. Seguindo aquele padrão que quase todo mundo usa #sad ou usou.

Você já definiu seu web.xml do Spring com UTF-8.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<web-app xmlns="http://java.sun.com/xml/ns/javaee" 
		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
          http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
         version="3.0">

	<!-- suas configurações -->
	
	<filter>
        <filter-name>charsetFilter</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>

    <!-- Mais configurações suas -->

    <jsp-config>
        <jsp-property-group>
            <url-pattern>*.jsp</url-pattern>
            <page-encoding>UTF-8</page-encoding>
        </jsp-property-group>
    </jsp-config>
</web>

Ai você faz deploy da sua app no seu Tomcat, porém aparece aquele problema de encoding danado, aqueles caracteres com ��. Por que?

Fazendo deploy, mesmo você setando no seu web.xml, será usado o encoding do Tomcat.

Pra resolver isso crie o arquivo setenv.sh na pasta bin do seu tomcat:

1
export JAVA_OPTS="${JAVA_OPTS} -Dfile.encoding=UTF8"

“Restarte” o seu Tomcat e, como diria Salomão Schvartzman: Seja feliz!.

Eu sempre esqueço o setenv.sh

PS: Aqui resolveu, e pra você ai?

Blog Logo

Marcelo Tozzi


Published

Image

Marcelo Tozzi

Mais um blog de desenvolvedor

Back to Overview