Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
已成功回调Java SendMail Api_Java_Email_Exception_Jakarta Mail - Fatal编程技术网

已成功回调Java SendMail Api

已成功回调Java SendMail Api,java,email,exception,jakarta-mail,Java,Email,Exception,Jakarta Mail,我正在使用Java MailApi,我想添加一些成功发送的电子邮件回调 我已阅读了有关SMTPAddressSucceedeException的SMTPAddressSucceedeException: 当 mail.smtp.reportsuccess属性为true 所以我现在有两个例外: public synchronized void sendMail(String subject, String body, String sender, String recipients) throws

我正在使用Java MailApi,我想添加一些成功发送的
电子邮件
回调

我已阅读了有关SMTPAddressSucceedeException的
SMTPAddressSucceedeException

当 mail.smtp.reportsuccess属性为true

所以我现在有两个例外:

public synchronized void sendMail(String subject, String body, String sender, String recipients) throws Exception, SMTPAddressSucceededException {
        try {
            MimeMessage message = new MimeMessage(session);
            DataHandler handler = new DataHandler(new ByteArrayDataSource(
                    body.getBytes(), "text/plain"));
            message.setSender(new InternetAddress(sender));
            message.setSubject(subject);
            message.setDataHandler(handler);
            BodyPart messageBodyPart = new MimeBodyPart();
            messageBodyPart.setText(body);
            _multipart.addBodyPart(messageBodyPart);

            // Put parts in message
            message.setContent(_multipart);
            if (recipients.indexOf(',') > 0)
                message.setRecipients(Message.RecipientType.TO,
                        InternetAddress.parse(recipients));
            else
                message.setRecipient(Message.RecipientType.TO,
                        new InternetAddress(recipients));
            Transport.send(message);
      } catch (SMTPAddressSucceededException e){
        Log.i("MAIL", "SMTAddressSucceededException");
      } catch (Exception e) {
        Log.i("MAIL", "sendMail failed");
      }
    }
  }
给出问题

中有一个更一般的异常“java.lang.exception” 已经有名单了吗

问题:为什么积极回调被视为消极回调的子异常?
如何区分邮件发送失败和成功?

从Transport.send方法返回时,会毫无例外地告诉您邮件已成功发送到邮件服务器,就像SMTPAddressSucceedeException一样。异常提供了更多的细节,这在某些情况下可能很有用,但是如果您所寻找的只是成功的迹象,那么从方法返回就简单多了。请注意,这两种方法都不能告诉您消息是否已成功传递给收件人