MUDAR LOCALE! aplicacao web, DATAS e NUMEROS

4 respostas
dmandrak

E ae pessoal.

Como eu estou dizendo no titulo, estou com um problema serio.

Tenho uma aplicacao web e o cliente que a pediu estah reclamando que os numeros estao vindo com 123,456.78 ou seja, ‘,’ para milhares e ‘.’ para decimal e, tambem, que as datas estao aparecendo como aug/2008 no lugar de ago/2008.

Tentei editar as mascaras do banco de dados e talz, mas nao deu certo, nem no proprio programa nao funcionou muito bem quando eu forcava a formatacao.

Dando uma olhada na net eu descobri que provavelmente o servidor que roda a aplicacao tem a tal da variavel locale=en-US e eu queria que fosse pt-BR.

Eu uso JSF pras paginas, onde eu posso mudar isso?

Eu jah vi uma galera falando que eh coisa do browser e nao da aplicacao, mas nao sei nao…

Por favor, quanto antes melhor.

Valeu!!!

(teclado em ingles, malz ae pelos acentos)

4 Respostas

Naruffy
//para datas

        FacesContext faces = FacesContext.getCurrentInstance();
        HttpServletRequest request = (HttpServletRequest) faces.getExternalContext().getRequest();
        //Pega a configuração de idioma do usuário
        Locale local = request.getLocale();

	//Para pasear a data
	SimpleDateFormat parse = new SimpleDateFormat("yyyyMM", local);


//para números

DecimalFormat formato = (DecimalFormat) DecimalFormat.getInstance(local);
double x = 1.1;
String numeroFormatado = format.format(x);

Abrass

dmandrak

Valeu campeao…

Vou testar isso ae 8) e jah posto-edito o resultado.

E

Você consegue setar um locale default na tag f:view

<f:view locale="pt_BR">
</f:view>

[]s

dmandrak

resolver em xml pra mim eh bem melhor,pq sao muitos campos em java pra eu ter q mudar de um em um como tava disse o naruffy.

se funcionar esse esquema do eu ponho os campos de ‘input-output’ ali dentro heheheheh

Criado 22 de julho de 2008
Ultima resposta 22 de jul. de 2008
Respostas 4
Participantes 3