[Pendente - testar] Problemas com Internacionalização + i18n + Vraptor + jstl

3 respostas
pedruhenrik

Olá estou com o seguinte problema abaixo, quem puder ajudar ou dar uns pitacos eu agradeço:

Meu sistema esta feito com Vraptor e usei as taglibs jstl apache para internacionalizar conforme i18n.
A internacionalização para o idioma inglês norte americano funciona corretamente.
E estou tendo dificuldades em internacionalizar meu sistema para o idiona japonês.

Adicionei no web.xml o seguinte trecho:

<context-param>
	<param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
	<param-value>messages</param-value>
</context-param>

meu messages.properties esta nomeado como: “messages_ja_JP.properties” e arquivo foi salvo no formato UTF-8.

nos jsp’s que devem ser carregados em japonês eu fiz essas mudanças:

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

já fiz algumas pesquisas porém sem sucesso até agora.
quem puder ajudar eu agradeço!

att,

3 Respostas

danieldestro

Também estou com problemas, mas em português mesmo.

No web.xml eu configurei:

<context-param> <param-name>br.com.caelum.vraptor.encoding</param-name> <param-value>UTF-8</param-value> </context-param>

Meus JSPs contém:

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

Mas quando uso JSTL para exibir uma mensagem do meu arquivo de properties, saí todo zoado na tela:

<fmt:message key="app.title" />

Resultado: Prógols

Embora, se tiver caracter acentuado no jsp, ele sai correto, mas vindo do properties pelo JSTL (i18n), sai todo zuado. Tentei converter o arquivo para UTF-8, mas continua com problema.

E também coloquei o um parâmetro adicional na JVM 99 (-Dfile.encoding=UTF-8) para subir Tomcat e nada.

pedruhenrik

então danieldestro,

o meu para português e inglês funciona normalmente, a diferença é q eu utilizo ISO-8859-1, olha como esta:

web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	id="WebApp_ID" version="2.5">
	<display-name>Projeto</display-name>

	<session-config>
		<session-timeout>5</session-timeout>
	</session-config>

	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
	<context-param>
		<param-name>br.com.caelum.vraptor.packages</param-name>
		<param-value>
		br.com.caelum.vraptor.blank,
		br.com.caelum.vraptor.converter.l10n,
		br.com.caelum.vraptor.util.hibernate
		</param-value>
	</context-param>

	<context-param>
		<param-name>javax.servlet.jsp.jstl.fmt.localizationContext</param-name>
		<param-value>messages</param-value>
	</context-param>

	<context-param>
		<param-name>br.com.caelum.vraptor.provider</param-name>
		<param-value>br.com.caelum.vraptor.util.hibernate.HibernateCustomProvider</param-value>
	</context-param>

	<filter>
		<filter-name>vraptor</filter-name>
		<filter-class>br.com.caelum.vraptor.VRaptor</filter-class>
	</filter>

	<filter-mapping>
		<filter-name>vraptor</filter-name>
		<url-pattern>/*</url-pattern>
		<dispatcher>FORWARD</dispatcher>
		<dispatcher>REQUEST</dispatcher>
		<dispatcher>ERROR</dispatcher>
	</filter-mapping>

	<error-page>
		<error-code>404</error-code>
		<location>/WEB-INF/jsp/erros/erro404.jsp</location>
	</error-page>

	<error-page>
		<error-code>505</error-code>
		<location>/WEB-INF/jsp/erros/erro505.jsp</location>
	</error-page>

	<error-page>
		<error-code>500</error-code>
		<location>/WEB-INF/jsp/erros/erro505.jsp</location>
	</error-page>
</web-app>

messages_pt_BR.properties:

usuarios.nome = Nome
usuarios.apelido = Apelido
usuarios.senha = Senha
usuarios.cpf = CPF
usuarios.rg = RG
usuarios.dtNasc = Data de Nascimento
usuarios.sexo = Sexo
usuarios.endereco = Endereço
usuarios.numero = Número
usuarios.complem = Complemento
usuarios.estado = Estado
usuarios.bairro = Bairro
usuarios.cidade = Cidade
usuarios.uf = UF
usuarios.cep = CEP
usuarios.telefone = Telefone
usuarios.email = Email

jsp:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<tr>
         <td><h9><fmt:message key="usuarios.email" /></h9></td>
        <td><input type="text" name="usuarios.email" id="usuarios.email"></td>
</tr>
<tr>
        <td><h9><fmt:message key="usuarios.nome" /></h9></td>
        <td><input type="text" name="usuarios.nome" id="usuarios.nome"></td>
</tr>

meu único problema mesmo esta sendo os Kanjis…rsrsrs

att,

ehy01

Ola Pedru.
Tava com esse problema aqui, resolvi com esse cabecalho:

<%@page language=“java” contentType="text/html; charset=“Shift_JIS”%>

Espero que ajude.

Boas festas

Criado 26 de novembro de 2010
Ultima resposta 26 de dez. de 2010
Respostas 3
Participantes 3