Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Entre para seguir isso  
Charles Ubiratan Kostetzer

Java Erro na compilacao Email com Java

Recommended Posts

Boa tarde, estou iniciando em java, e está me gerando um erro ao criar a um java source:

MAIL:72: warning: finally clause cannot complete normally
        }                                                
        ^                                                
1 warning                                                
 

Por favor onde estou errando ?


create or replace and compile java source named mail as
import java.io.*;
import java.sql.*;
import java.util.Properties;
import java.util.Date;
import javax.activation.*;
import javax.mail.*;
import javax.mail.internet.*;
import oracle.jdbc.driver.*;
import oracle.sql.*;

public class mail {
    static String dftMime = "application/octet-stream";
    static String dftName = "filename.dat";

    public static oracle.sql.NUMBER send(String from,
                                         String to,
                                         String cc,
                                         String bcc,
                                         String subject,
                                         String body,
                                         String SMTPHost,
                                         oracle.sql.BLOB attachmentData,
                                         String attachmentType,
                                         String attachmentFileName) {
        int rc = 0;
        try {
            Properties props = System.getProperties();
            props.put("mail.smtp.host", SMTPHost);
            Message msg = new MimeMessage(Session.getDefaultInstance(props, null));
            msg.setFrom(new InternetAddress(from));

            if (to != null )    
                msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to, false));

            if (cc != null)     
                msg.setRecipients(Message.RecipientType.CC, InternetAddress.parse(cc, false));

            if (bcc != null)     
                msg.setRecipients(Message.RecipientType.BCC, InternetAddress.parse(bcc, false));

            if (subject != null)      
                msg.setSubject(subject);
            else
                msg.setSubject("(no subject)");

            msg.setSentDate(new Date());

            if (attachmentData != null) {
                MimeBodyPart mbp1 = new MimeBodyPart();
                mbp1.setText((body != null ? body : ""));
                mbp1.setDisposition(Part.INLINE);
                MimeBodyPart mbp2 = new MimeBodyPart();
                String type = (attachmentType != null ? attachmentType : dftMime);
                String fileName = (attachmentFileName != null ? attachmentFileName : dftName);
                mbp2.setDisposition(Part.ATTACHMENT);
                mbp2.setFileName(fileName);
                mbp2.setDataHandler(new DataHandler(new BLOBDataSource(attachmentData, type)));
                MimeMultipart mp = new MimeMultipart();
                mp.addBodyPart(mbp1);
                mp.addBodyPart(mbp2);
                msg.setContent(mp);
            } else {
                msg.setText((body != null ? body : ""));
            }
            Transport.send(msg);
            rc = 1;
        } catch (Exception e) {
            e.printStackTrace();
            rc = 0;
        } finally {
            return new oracle.sql.NUMBER(rc);
        }
    }


    static class BLOBDataSource implements DataSource {
        private BLOB   data;
        private String type;

        BLOBDataSource(BLOB data, String type) {
            this.type = type;
            this.data = data;
        }

        public InputStream getInputStream() throws IOException {
            try {
                if(data == null)
                    throw new IOException("No data.");

                return data.getBinaryStream();
            } catch(SQLException e) {
                throw new IOException("Cannot get binary input stream from BLOB.");
            }
        }

        public OutputStream getOutputStream() throws IOException {
            throw new IOException("Cannot do this.");
        }

        public String getContentType() {
            return type;
        }

        public String getName() {
            return "BLOBDataSource";
        }
    }
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×