Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.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/j2ee中的回跳邮件跟踪_Java_Email_Jakarta Ee - Fatal编程技术网

java/j2ee中的回跳邮件跟踪

java/j2ee中的回跳邮件跟踪,java,email,jakarta-ee,Java,Email,Jakarta Ee,我编写了从公司域向客户发送邮件的代码。现在我想跟踪,邮件是否发送到收件人。如果邮件被退回,我也希望收到通知。那我能做些什么呢 @Override public void sendEmail(EmailDTO emailDTO) throws EmailException { Session emailSession = authenticateMailServer(); if (emailSession != null && Strin

我编写了从公司域向客户发送邮件的代码。现在我想跟踪,邮件是否发送到收件人。如果邮件被退回,我也希望收到通知。那我能做些什么呢

  @Override
    public void sendEmail(EmailDTO emailDTO) throws EmailException {
        Session emailSession = authenticateMailServer();
        if (emailSession != null && StringUtils.isNotBlank(emailDTO.getEmailTo())) {
            try {
                Message message = new MimeMessage(emailSession);
                if (PMBSSubstypeConstants.CURRENT_SUBS_TYPE_ID <= 0) {
                    SubsType subsType = em.find(SubsType.class, 1);
                    SubsTypeUtils.setCurrentSubsType(subsType);
                }
                //if (StringUtils.isBlank(emailDTO.getEmailFrom())) {
                emailDTO.setEmailFrom(PMBSSubstypeConstants.MAIL_SERVER_EMAIL); //Fallback if from email is not received from UI
                //}
                message.setFrom(new InternetAddress(PMBSSubstypeConstants.MAIL_SERVER_EMAIL));//emailDTO.getEmailFrom()));
                message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(emailDTO.getEmailTo()));
                if (StringUtils.isNotBlank(emailDTO.getEmailCC())) {
                    message.setRecipients(Message.RecipientType.CC, InternetAddress.parse(emailDTO.getEmailCC()));
                }
                if (StringUtils.isNotBlank(emailDTO.getEmailBCC())) {
                    message.setRecipients(Message.RecipientType.BCC, InternetAddress.parse(emailDTO.getEmailBCC()));
                }
                message.setSubject(emailDTO.getEmailSubject());
                message.setContent(emailDTO.getEmailBody(), "text/html; charset=utf-8");
                if (StringUtils.isNotBlank(emailDTO.getReplayTO())) {
                    Address address[] = new Address[]{
                        new InternetAddress(emailDTO.getReplayTO())
                    };
                    message.setReplyTo(address);
                }
                Transport.send(message);

            } catch (MessagingException e) {
                throw new RuntimeException(e);
            }
        }
    }
@覆盖
public void sendmail(EmailDTO EmailDTO)引发EmailException{
会话emailSession=authenticateMailServer();
if(emailSession!=null&&StringUtils.isNotBlank(emailDTO.getEmailTo()){
试一试{
Message Message=新的mimessage(emailSession);

如果(pmbssubtypeconstants.CURRENT_SUBS_TYPE_ID)被反弹意味着什么?错误的发件人或错误的域或其他东西?使用相同的API,检查收件箱中未阅读的邮件并分析内容。任何类型的反弹都可能是硬反弹或软反弹@Vels4j我没有得到相同的结果。我该怎么办?你能帮我吗