Pessoal, estou com um problema aqui que não estou conseguindo resolver… é o seguinte:
Tenho uma aplicação que envia emails com aniversáriantes do dia para toda a empresa. Ele busca esses dados no banco de dados e envia o nome e os dados do aniversáriante para todos. Acontece que, quando ele traz um nome com acento, ele não mostra o caracter. Alguém tem uma idéia de como eu poso forçar esse acento em uma palavra trazido do banco de dados?? Quer dizer, o email é montado na hora do envio, por isso estou meio perdido aqui…
Os acentos não aparecem no email, ou no java mesmo antes de ser enviado já some os acentos ?
L
Lucas_Sorrentino
Ele perde os acentos na hora do envio.
D
dxos
qual biblioteca de envio você está utilizando?
L
Lucas_Sorrentino
javax.mail
D
dxos
Onde você seta a mensagem a ser enviada, tente algo ± asisim:
//mensagem contendo os Acentos....Stringmensagem="áááááóóóãããoõõõõõõ";//Messagemessage=newMimeMessage(mailSession);// este segundo parametro passado, contendo o charset da mensagemmessage.setContent(mensagem,"text/html; charset=iso-8859-1");
creio ser isso.
C
cawink
Cara, uma vez fiz isso e utilizo até hoje.
Pode ser que tenha outras maneiras
Obs.: Método adquirido aqui no fórum alguns anos atrás.
D
dxos
cawink:
Cara, uma vez fiz isso e utilizo até hoje.
Pode ser que tenha outras maneiras
ai vai
o text é o texto do email. Como o email é html, devemos usar caracteres especiais substituindo pelo padrão da linguagem.
Abraço
Sendo sincero, não intendi… você substituí um caracter por ele mesmo ? não faz sentido…
C
cawink
Ops, falha nossa.
Ta dando problemas devido aos caracteres especiais em html.
Coloquei num arquivo a solução
D
dxos
não seria mais Util, envez de percorrer uma mensagem varias vezes, você apenas trocar o charset do corpo do email ?
Minha opinião, mais simples e rapido.
C
cawink
tb.
tem o charset=iso-8859-1
Mas se quiser trabalhar com UTF-8, dai vai ter que ser na mão mesmo
L
Lucas_Sorrentino
Cara, funcionou perfeitamente! Valeuz!!
D
dxos
Lucas Sorrentino:
Onde você seta a mensagem a ser enviada, tente algo ± asisim:
//mensagem contendo os Acentos.... Stringmensagem="áááááóóóãããoõõõõõõ";// Messagemessage=newMimeMessage(mailSession);// este segundo parametro passado, contendo o charset da mensagem message.setContent(mensagem,"text/html; charset=iso-8859-1");
creio ser isso.
Cara, funcionou perfeitamente! Valeuz!!
Show, era só corrigir o charset…
abçs
L
Lucas_Sorrentino
Galera, vou aproveitar a Thred aqui… to com um detalhezinho… o assunto do email, ue agora possui acento, está vindo todo zoado… nada do que eu faço resolve… eu já setei a string como UTF-8, como ISO, mas não consigo enviar um email com acento no assunto… alguém tem alguma idéia??
ele é assim pq eu tenho uma classe já preparada pra fazer o envio… e os parametros pro envio são aqueles ali… estou tendo problema no subject do email…
D
dxos
Então, o problema pode estar no meu metodo enviar na sua Classe Email.
pois nop codigo q vc enviou não possuí nada demais…