Regis,

O problema parece-me relativo à configuração de locale.

A configuração vai depeder da distribuição que você estiver usando.

Certifique-se de você tenha todos os pacotes de internacionalização (I18N) e da glib atualizados e instalados.

No RedHat (agora Fedora), você pode tentar algo do tipo:

Colocar no /etc/profile:

LANG=pt_BR
LC_ALL=pt_BR
LC_CTYPE=ISO-8859-1
LESSCHARSET=latin1
export LANG LC_ALL LC_CTYPE LESSCHARSET

No Slackware a configuração seria semalhante a:

LANG=pt_BR
LC_ALL='pt_BR'
LC_CTYPE=ISO-8859-1
LESSCHARSET=latin1
export LANG LC_ALL LC_CTYPE LESSCHARSET
  
/usr/bin/localedef -f ISO-8859-1 -i pt_BR pt
 
No Debian se pareceria com:

/usb/bin/localedef -i pt_BR -f ISO-8859-1 pt_BR

E ter o seguinte em ~/.bashrc:

export LC_ALL='pt_BR'
export LANGUAGE=pt_BR

Obs.: Note que dependendo da distribuição, você poderá configurar os arquivos /etc/profile, ~/.profile, /etc/bashrc e/ou ~/.bashrc.

Para certificar-se que a configuração foi feita corretamente, efetue um logout do sistema, faça um novo login e execute os comandos:

date e locale.

Deverá surgir algo como:

[EMAIL PROTECTED]:~# date
Qua Jun  9 08:07:51 BRT 2004 (Português-Brasil)

[EMAIL PROTECTED]:~# locale
LANG=C
LC_CTYPE="pt_BR"
LC_NUMERIC="pt_BR"
LC_TIME="pt_BR"
LC_COLLATE="pt_BR"
LC_MONETARY="pt_BR"
LC_MESSAGES="pt_BR"
LC_PAPER="pt_BR"
LC_NAME="pt_BR"
LC_ADDRESS="pt_BR"
LC_TELEPHONE="pt_BR"
LC_MEASUREMENT="pt_BR"
LC_IDENTIFICATION="pt_BR"
LC_ALL=pt_BR

Boa sorte.

Anaximandro Melo.

Regis Santos wrote:
Olá pessoal,
 
Estou tentando enviar uma mensagem pela API javax.mail, mas a mensagem não vem na codificação ISO-8859-1. Isso acontece apenas quando o Tomcat está rodando sob o Linux.
 
Já chamei fiz setHeader("Content-Type","text/plain; charset=ISO-8859-1"); já fiz setContentLanguage(new String[] {"pt-br"}); mas nada faz a mensagem vir corretamente.
 
Aí vai um trecho do código:
 
...
MimeMessage email = new MimeMessage(session);
email.setHeader("Content-Type", "text/plain; charset=ISO-8859-1");
email.setContentLanguage(new String[] {"pt-br"});
email.setFrom(new InternetAddress(this.getRemetente()));
email.addRecipient(Message.RecipientType.TO , new InternetAddress(destinatario));
email.setSubject(this.getTitulo());
email.setText(email.getContentType() +"\n"+ this.getMensagem() );
Transport.send(email);
...
 
Aí vai também um trecho do header da mensagem quando ela chega ao destinatário:
 
...
Subject: =?ANSI_X3.4-1968?Q?Teste
Mime-Version: 1.0
Content-Type: text/plain; charset=ANSI_X3.4-1968
Content-Transfer-Encoding: 7bit
Content-Language: pt-br
...
 
Obrigado!
 
Regis Santos
Desenvolvedor Web
 
IVIA - Soluções Internet
E-mail:
[EMAIL PROTECTED]
MSN: [EMAIL PROTECTED]
Fone: (85) 264-4747 - Ramal: 220
Web:
www.ivia.com.br

--
Untitled Document
Anaximandro B. de Melo
[EMAIL PROTECTED]

Tel: (85) 452.2266
Fax: (85) 452.2269

 


<<inline: logomail.gif>>

Responder a