Olá,
para mandar e-mail com attachments aí segue o código:
import java.util.Date;
import java.util.Properties;
import java.util.Hashtable;
import java.io.FileReader;
import java.io.BufferedReader;
import javax.mail.Session;
import javax.mail.Message;
import javax.mail.URLName;
import javax.mail.Part;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.InternetAddress;
import com.sun.mail.smtp.SMTPTransport;
import java.util.*;
public void sendWithAttachment(StEmail stEmail) throws
Exception
{
Properties props = new Properties();
props.put("mail.smtp.host", strSMTP);
Session session = Session.getDefaultInstance(props,
null);
Message msg = new MimeMessage(session);
InternetAddress from;
InternetAddress[] toAddr = new InternetAddress[1];
try {
from = new InternetAddress("strFrom");
}
catch (javax.mail.internet.AddressException ex){
throw new Exception("Endereço de email incorreto
no From");
}
try{
toAddr[0] = new InternetAddress(strTo);
}
catch (javax.mail.internet.AddressException ex){
throw new SendMessageException("Endereço de email
incorreto", emailTo, strSubject, strMessage);
}
try
{
msg.setFrom(from);
msg.setRecipients(Message.RecipientType.TO, toAddr);
msg.setSubject(strSubject);
MimeMultipart mp = new MimeMultipart();
MimeBodyPart text = new MimeBodyPart();
text.setDisposition(Part.ATTACHMENT);
text.setContent(strMessage, "text/plain");
text.setFileName(strFileName);
mp.addBodyPart(text);
msg.setContent(mp);
msg.setSentDate(new Date());
SMTPTransport t = new SMTPTransport(session,new
URLName("smtp://" + strSMTP() + ":strPorta"));
t.send(msg);
}
catch (javax.mail.MessagingException ex)
{
throw new SendMessageException("Erro no envio do
email: " + ex.getMessage(), strTo, strSubject,
strMessage);
}
}
******************************************
e se vc quiser mandar o conteúdo e fazer com que
apareça a caixa de diálogo(do browser) de download
vc pode fazer o seguinte:
res.setContentType("text/other");
PrintWriter out = res.getWriter();
mas antes disso faça a leitura do arquivo com o
FileReader por exemplo, ou BufferedReader.
o significado do other é que quando vc manda o fluxo
de dados para o browser ele não "sabe" qual é o tipo
de texto, então ele pergunta se quer abrir ou salvar.
*OBS.: não necessariamente precisa ser /other, pode
ser qualquer outra coisa, desde que o browser seja
incapaz de entender qual o content type dos dados.
Qualquer dúvida mande e-mail.
Um abraço à todos,
Romulo Bertegz
--- Ricardo Schlinz <[EMAIL PROTECTED]>
escreveu: > Boa Tarde Lista.
>
> Estou fazendo uma página HTML que cria um arquivo
> .txt no servidor.
> Preciso que este arquivo fosse anexado e enviado
> para o usuario via
> e-mail, ou
> criar uma classe que faça um download na máquina do
> usuario.
> Se alguém souber, muito obrigado.
>
> Ricardo
>
>
>
>
> ------------------------------ LISTA SOUJAVA
> ----------------------------
> http://www.soujava.org.br - Sociedade de Usuários
> Java da Sucesu-SP
> dúvidas mais comuns:
> http://www.soujava.org.br/faq.htm
> regras da lista:
> http://www.soujava.org.br/regras.htm
> para sair da lista: envie email para
> [EMAIL PROTECTED]
>
-------------------------------------------------------------------------
_______________________________________________________________________________________________
Yahoo! GeoCities
Tenha seu lugar na Web. Construa hoje mesmo sua home page no Yahoo! GeoCities. É fácil
e grátis!
http://br.geocities.yahoo.com/
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------