Pergunta

Eu estou tendo alguns internacionalização ais:

Meu string UTF-8 campos estão sendo renderizado no navegador, como ????depois de ser retornados do banco de dados.

Após a recuperação do banco de dados usando Hibernate, os campos de Seqüência de caracteres são correctamente apresentados na inspeção usando o depurador do eclipse.

No entanto Struts2/Telhas é de renderização essas cadeias de caracteres como ????no HTML enviado para o navegador.

O conjunto de caracteres directiva está presente no cabeçalho HTML:

Talvez eu precise de adicionar algo ao meu struts2 ou telhas de configurações?

Foi útil?

Solução

Você pode tentar algo como isto.

É tomada a partir do sol página Conjuntos de caracteres e Codificações de.Acho que isso deve ser a primeira linha no seu jsp.

<%@ page contentType="text/html; charset=UTF-8" %>

Outras dicas

OMG - acontece que a causa foi uma total WTF?

todos os nossos telha respostas estavam sendo servidos pelos criado um servlet que foi ignorando a

<%@ page contentType="text/html; charset=UTF-8" %>

directiva (e quem sabe o que mais).

TilesDispatchExtensionServlet :bloody arquitetura astronautas, eu agitar minha mão em vós.

Tente definir o atributo lang no <html /> elemento.

Exemplo de HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="ja"> 

XHTML exemplo:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja"> 

Você precisa usar um filtro.Veja:

http://wiki.apache.org/tomcat/Tomcat/UTF-8

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top