Ajuda nessa classe de envio de email

Galera,
tenho essa classe abaixo para envio de email, estou tentando implementar o envio para mais de uma pessoa, segue a classe abaixo:

package email;

import java.util.Properties; 
import javax.mail.*; 
import javax.mail.internet.*; 
import java.io.*; 
import javax.servlet.*; 
import javax.servlet.http.*;

public class Email extends HttpServlet { 

public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { 

PrintWriter out = res.getWriter(); 
res.setContentType("text/html");
try { 

String to = req.getParameter("contatos");
String assunto = "assunto";
String mensagem = "Testando";
String cc = req.getParameter("cc");

String from = "luciano@capitalleiloes.com.br";

Properties props = new Properties(); 
props.put("mail.smtp.host", "smtp2.locaweb.com.br"); 
Session session = Session.getInstance(props, null); 

MimeMessage message = new MimeMessage(session); 

message.setFrom(new InternetAddress(from)); 

Address toAddress = new InternetAddress(to); 
message.addRecipient(Message.RecipientType.TO, toAddress);

//Address ccAddress = new InternetAddress(cc); 
//message.addRecipient(Message.RecipientType.CC, ccAddress);

message.setSubject(assunto); 

message.setContent(mensagem, "text/plain"); 

Transport.send(message); 

out.println("E-mail enviado");
} 
catch (MessagingException e) { 
out.println("Email nao pode ser enviado! " + e.getMessage()); 
} 
} 
} [/code]

Esse exemplo está através do Get só para testar mesmo, mas vou usar Post, nessa parte que coloquei em comentário

[code]
//Address ccAddress = new InternetAddress(cc); 
//message.addRecipient(Message.RecipientType.CC, ccAddress);
[/code]

É onde implementei a cópia, funciona porém para apenas um endereço do email que eu passe, eu passo pelo método Get assim:

[code]
http://www.meusite.com.br/servlets/email?to=eu@eu.com.br&cc=eu@eu.com.br
[/code]

Porém ao tentar mais de um usuário eu tento passar com vírgula

[code]
http://www.meusite.com.br/servlets/email?to=eu@eu.com.br&cc=eu@eu.com.br,email@email.com.br
[/code]

Então lança uma excessão de Endereço Inválido, ao passar assim:

[code]http://www.meusite.com.br/servlets/email?to=eu@eu.com.br&cc=eu@eu.com.br&email@email.com.br

Não lança excesão, dando tudo certo, porém o email não chega, chega apenas para o “to” e para o primeiro endereço do “cc”, não sei se implementei errado no código ou se tem outro jeito de passar isso, alguém sabe???

Sua URL está errado. O & serve para separar parâmetros do request no formato &chave=valor.
Tenta trocar o “&” por “;”, assim:

http://www.meusite.com.br/servlets/email?to=eu@eu.com.br&cc=eu@eu.com.br;email@email.com.br

Provavelmente o browser vai codificar sua URL e substituir o caracter “;”. Você talvez precise tratar isto no código Java. Há uma classeque fazr chamada URLEncoding se não me engano. Ou é algum método na própria classe URL.

Olá amigo,
infelizmente não eu certo, lançou a seguinte excessão

Illegal semicolon, not in group 

Será que alguém tem outra sugestão de como pode funcionar ou ser implementado, já que fiz a implementação do “CC” porém só da para enviar pra um email.

Valeu.

Salve,

Enumera os parâmetros de e-mail e faz uma estrutura de repetição, ou seja, envie apenas um e-mail por vez, o que é bom, pois os destinatários não saberão para quem, além dele, que recebeu este e-mail.

:okok: :perdido: :coffee:

Obrigado amigo, segui teu conselho e fiz um “for” para enviar os emails um por um, ficou ate melhor mesmo, pois envia um por um e não da para ver a lista toda, caso alguém queira o código de como fiz é só mandar mensagem

Valeu! :razz:

com relação ao encode q o frank citou… acredito q seja o response.encodeURL( String url )