Formatar moeda no Red Hat

 Olá pessoas, 


 Estou tentando resolver um pequeno problema de formatação da moeda no Java estou usando a jdk 1.6 _06 a com uma aplicacao J2EE.
Aqui na Empresa estou usando S0 Windows XP e funciona normal a sua saida fica dessa forma :   1.700,00  (correta)

Mas qdo uso no Linux Red Hat a sua formatacao fica da seguinte forma : 1,700.00 o locale disso é Ingles.
Foi sugerido a alteracao no proprio Linux para Portugues acho que isso resolveria o problema , mas existe uma forma de fazer esse tratamento aqui na minha classe segue a classe em questao :

[code]
 public class ClienteSuspeito {

  gets e sets 

     public BigDecimal getValorPatrimonio() {
    return valorPatrimonio;
}
    public void setValorPatrimonio(BigDecimal valorPatrimonio) {
    this.valorPatrimonio = valorPatrimonio;
}

 Aqui o metodo que criei que trata ! 

public String getValorPatrimonioFormatado() {
if (valorPatrimonio == null)
return “0,00”;
NumberFormat df = NumberFormat.getCurrencyInstance(new Locale(“pt”, “BR”));
//DecimalFormat df = new DecimalFormat("#,##0.00");
return df.format(valorPatrimonio);

}
 Entao havia instanciado a classe DecimalFormat  por isso está comentado mas não funcionou ! 
 Alguem já passou por isso ? 

Aguardo resposta  ! 

}
[/code]

Adriana Cardoso

Se sua aplicação for desktop, a maneira mais simples é ajustar o Locale o mais rápido possível na sua aplicação:

public static void main(String[] args) {
    Locale.setDefault (new Locale ("pt", "BR"));
    ... resto do seu programa ...
}

Se for web, aí você precisa passar um parâmetro adequado no início do sistema. O que você usa como servidor J2EE? JBoss? OAS? WebSphere?

Sobre o Conteiner usamos o Tomcat 5.5 , entao dessa forma já usei aqui e nao funcionou …

Olá eu fiz dessa forma e funcionou :

[code]
public String getValorPatrimonioFormatado() {
if (valorPatrimonio == null)
return “0,00”;
DecimalFormatSymbols symbols = new DecimalFormatSymbols(new Locale(“pt”, “BR”));
DecimalFormat decimalFormat = new DecimalFormat("##,###,###,##0.00", symbols);
return decimalFormat.format(valorPatrimonio);

}
     [/code]
 Obrigada