Problema de encoding com message.properties

4 respostas
hugosantos

Galera,

Antes de mais nada me desculpe se o tópico for duplicado, eu procurei no fórum mas não localizei nada a respeito do meu problema.

Estou utilizando o VRaptor 3 em minha aplicação e como indicado uso ValidationMessage para os erros de validação.

Mas quando recupero as mensagens no front-end elas vem com encoding bagunçado.

Por exemplo : Campo obrigatório

Pelo que entendi por padrão o encoding é ISO-8859-1 e para tentar alterar isso para UTF-8 hoje tenho as seguintes configurações :

web.xml

<context-param>
        <param-name>br.com.caelum.vraptor.encoding</param-name>
        <param-value>UTF-8</param-value>
    </context-param>
    <context-param>
        <param-name>javax.servlet.jsp.jstl.fmt.request.charset</param-name>
        <param-value>UTF-8</param-value>
    </context-param>
    <jsp-config>
        <jsp-property-group>
            <url-pattern>*.jsp</url-pattern>
            <page-encoding>UTF-8</page-encoding>
        </jsp-property-group>
    </jsp-config>

Em todas as JSP :

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isELIgnored="false"%>
e
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

Como parâmetro da VM para inicialização do Tomcat :

No Tomcat arquivo server.xml

No eclipse, todos os arquivos por padrão setei para serem salvos como UTF-8 e chequei na janela properties do eclipse e na seção Text file encoding : Default ( determined from content: UTF-8 )

Acredito que de fato o problema não esteja relacionado ao VRaptor e sim a aplicação web como um todo e as configurações de encoding/charset do ambiente, o problema é que não sei o que mais pode estar faltando alguém poderia tentar me ajudar ?

4 Respostas

Vmaia

Olá, vai ver é teu browser que está com o encoding diferente. :smiley:

hugosantos

Então, estou testando em 5 browsers diferentes : IE 7 e 8, Opera 10.53, Firefox 3.5.9 e Chrome 4.1.249.1064 todos eles com o mesmo problema e todos reconhecendo a página como UTF-8. =(

G

Você está realmente salvando seus arquivos com UTF-8? Se você já tinha um arquivo em ISO-8859-1 e depois você apenas trocou o encoding não funciona. É melhor você fazer um save-as e salvá-lo por cima dele mesmo como UTF-8.

Não existe isso do browser estar com encoding diferente. O browser respeita o encoding que é enviado no response.

hugosantos

Olha a que nível a coisa chegou… Eu já cheguei a deletar o projeto inteiro inclusive do svn e recriei novamente só pra ter certeza que nenhuma versão anterior pudesse bagunçar (supondo que isso de ter salvo com encoding diferwnte tivesse ocorrido em algum momento por engano) mas por default o meu ambiente usa utf-8no eclipse.ini por exemplo ate deixo aquela diretiva de -Dfile.encoding=UTF-8. Mas mesmo assim o erro persiste.

Criado 24 de maio de 2010
Ultima resposta 24 de mai. de 2010
Respostas 4
Participantes 3