Envio de email com anexo

2 respostas
S

Bom dia a todos

Estou preisando criar um envio de email com anexo.
Bom eu tenho os codigo tanto para envio de email quando para fazer o upload utilizando o fileupload da apache.
Mas não estou entendo como vou juntar esses 2 codigo alguem poderia me ajudar?

Codigo de upload

boolean isMultipart = FileUpload.isMultipartContent(request);

if (isMultipart) {

DiskFileUpload upload = new DiskFileUpload();

upload.setRepositoryPath(“c:/temp”);

List items = upload.parseRequest(request);

Iterator it = items.iterator();

while (it.hasNext()) {

FileItem fitem = (FileItem) it.next();

if (!fitem.isFormField()) {

%><%= fitem.getName() %> - <%= fitem.getSize() %> bytes
}
	      }
	   }
Codigo de envio de email

String to = [email removido];

String from = [email removido];

String caminho = request.getParameter(filUpload);
Properties props = new Properties();
props.put("mail.smtp.host", "localhost");


Session sessao = Session.getInstance(props);
sessao.setDebug(true);

MimeMessage message = new MimeMessage(sessao);

message.setFrom(new InternetAddress(from));
Address toAddress = new InternetAddress(to);
message.addRecipient(Message.RecipientType.TO, toAddress);
message.setSubject("Assunto:Pesquisa");

BodyPart corpoPartes = new MimeBodyPart();
corpoPartes.setText("Esta sendo encaminha mais uma avaliação realizada.");

BodyPart parteArquivo = new MimeBodyPart();
FileDataSource source = new FileDataSource(caminho);
parteArquivo.setDataHandler(new DataHandler(source));
parteArquivo.setFileName("pesquisa.xls");

Multipart variasPartes = new MimeMultipart();
variasPartes.addBodyPart(corpoPartes);
variasPartes.addBodyPart(parteArquivo);
message.setContent(variasPartes);
Transport.send(message);

Desde já agradeço a ajuda

2 Respostas

S

problema resolvido

String sNumArquivo    = pesquisa;

FileItem myFile = null;

boolean isMultipart = FileUpload.isMultipartContent(request);

if (isMultipart) {

DiskFileUpload upload = new DiskFileUpload();

upload.setRepositoryPath(c:/temp);

List items = upload.parseRequest(request);

Iterator it = items.iterator();

while (it.hasNext()) {

FileItem fitem = (FileItem) it.next();

if (!fitem.isFormField()) {

myFile = fitem;

break;	

}

}

}
String to = "[email removido]";
	String from = "[email removido]";
	String caminho = request.getParameter("filUpload");

	Properties props = new Properties();
	props.put("mail.smtp.host", "localhost");
	
	
	Session sessao = Session.getInstance(props);
	sessao.setDebug(true);
	
	MimeMessage message = new MimeMessage(sessao);
	
	message.setFrom(new InternetAddress(from));
	Address toAddress = new InternetAddress(to);
	message.addRecipient(Message.RecipientType.TO, toAddress);
	message.setSubject("Pesquisa ");
	
	BodyPart corpoPartes = new MimeBodyPart();
	corpoPartes.setText("Esta sendo encaminha mais uma avaliação realizada.");
	
	BodyPart parteArquivo = new MimeBodyPart();
	class MyDataSource implements DataSource
	{
		FileItem myFile;
		MyDataSource(FileItem myFile)
		{
			this.myFile = myFile;
		}
		public OutputStream getOutputStream() throws IOException
		{
			return myFile.getOutputStream();
		}
		
		public String getName()
		{
			return myFile.getName();
		}
		
		public InputStream getInputStream() throws IOException
		{
			return myFile.getInputStream();
		}
		
		public String getContentType()
		{
			return myFile.getContentType();
		}		
	};
	DataSource source = new MyDataSource(myFile);

	parteArquivo.setDataHandler(new DataHandler(source));
	parteArquivo.setFileName("pesquisa.xls");
	
	Multipart variasPartes = new MimeMultipart();
	variasPartes.addBodyPart(corpoPartes);
	variasPartes.addBodyPart(parteArquivo);
	message.setContent(variasPartes);
	Transport.send(message);
d34d_d3v1l

super interessante seu tópico,
mas por falta de está ilegivel…

Posso te pedir um favor?

…Edite seu post e coloque a tag Code para que possamos
visualizar melhor o código?

obrigado

Criado 11 de março de 2011
Ultima resposta 11 de mar. de 2011
Respostas 2
Participantes 2