web项目中页面修改javamail发件人信息后发邮件失败

问题描述

web项目中页面修改javamail发件人信息后发邮件失败
我们的web项目使用javamail发送邮件。页面可修改发送邮件的服务器、发件人信息,但是现在在页面修改发件人邮箱地址和密码之后,发送邮件失败。重起Tomcat服务器之后,又可以正常发送邮件,各位大神,有谁知道为什么呢?

public boolean sendMail(String subject String body){      Properties props = new Properties();      props.put(""mail.smtp.host"" server);      props.put(""mail.smtp.auth"" needAuth);      props.put(""mail.smtp.sender"" sender);      props.put(""mail.smtp.password"" password);      // 判断是否需要身份认证      MailAuthenticator authenticator = null;      if (needAuth) {          authenticator = new MailAuthenticator(sender password);      }      try {          Session session = Session.getDefaultInstance(props authenticator);          MimeMessage message = new MimeMessage(session);          InternetAddress from = null;          if(null != sender && !"""".equals(sender)){              from = new InternetAddress(sender);          }          message.setFrom(from);          String[] str = to.split("");          InternetAddress[] address = new InternetAddress[str.length];           for (int i = 0; i < str.length; i++) {              address[i] = new InternetAddress(str[i]);          }          message.setRecipients(Message.RecipientType.TOaddress);          message.setSubject(subjectUTF-8"");          message.setSentDate(new Date());          MimeBodyPart mbp = new MimeBodyPart();          mbp.setContent(bodytext/html;charset=UTF-8"");          Multipart multipart = new MimeMultipart();          multipart.addBodyPart(mbp);          message.setContent(multipart);          Transport.send(message);          return true;      } catch (Exception e) {          return false;      }  

修改发件人之后,报如下异常:

com.sun.mail.smtp.SMTPSendFailedException: 550 Invalid User 684966a9-37c9-4b09-ba32-ea282cf46b58
;
nested exception is:
com.sun.mail.smtp.SMTPSenderFailedException: 550 Invalid User 684966a9-37c9-4b09-ba32-ea282cf46b58

at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:2057)
at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1580)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:1097)
at javax.mail.Transport.send0(Transport.java:195)
at javax.mail.Transport.send(Transport.java:146)

解决方案

是不是tomcat缓存的问题

时间: 2024-10-12 17:35:34

web项目中页面修改javamail发件人信息后发邮件失败的相关文章

问题标签用户 web项目中页面修改javamail发件人信息后发邮件失败

问题描述 各位大神,请教个问题!我们的web项目使用javamail发送邮件.页面可修改发送邮件的服务器.发件人信息,但是现在在页面修改发件人邮箱地址和密码之后,发送邮件失败.重起Tomcat服务器之后,同样的用户名密码又可以正常发送邮件.大神,有谁知道为什么呢?发邮件的代码如下:ublicbooleansendMail(Stringsubject,Stringbody){Propertiesprops=newProperties();props.put("mail.smtp.host"

web项目中关于修改功能的问题

问题描述 web项目中关于修改功能的问题 在写修改代码的时候,有一些不会变动的字段,如id,创建时间等,对于这些字段的处理方法除了下面几种还有什么方法吗?1.隐藏到页面上2.修改的时候再从数据库查询一次3.保存到服务器上我觉得这三种方法都不太好,想问一下还有没其他更好的方法呀? 解决方案 如果是hibernate,,给不更新的字段设置update为false 解决方案二: session域,request域 解决方案三: 如果是页面效果,你就给它不可编辑的属性. 解决方案四: 不更新不需要修改的

封装-java web项目中用户实体类定义

问题描述 java web项目中用户实体类定义 在java web项目中,都有用户信息封装在用户实体类中.然后在控制类中多个方法都需要调用这个用户实体类.那么,第一种方案:我可以将这个用户实体类定义成全局变量,并在第一次登录的时候赋值,然后在之后的方法中就可以直接调用该全局变量.第二种方案:在登录的时候将用户实体类存入session中,然后在其他方法调用时,从session中取出该实体.请问这两种方案应该用哪种?如果是第二种,那是否应该将该用户实体定义为全局变量,然后在每次需要调用时,从sess

Web项目中创建简单的错误处理页面

当应用程序出现错误的时候,如果没有做错误页面处理的话,会直接输出一些敏感的信息出来,有时候甚至会直接将项目所在的物理路径给显示出来,严重缺乏安全性,并且错误种类繁多,页面风格不一,导致用户体验不好,本文介绍如何在web项目中创建错误页面,从而友好的提示错误信息. 一,创建错误页面error.aspx,前台代码如下(可根据实际需要增加元素): <%@ Page Language="C#" AutoEventWireup="true" CodeBehind=&qu

【Filter 不登陆无法访问】web项目中写一个过滤器实现用户不登陆,直接给链接,无法进入页面的功能

在web项目中写一个过滤器实现用户不登陆,直接给链接,无法进入页面,而重定向到登陆界面的功能. 项目是用springMVC+spring+hibernate实现 (和这个没有多大关系) 第一步: 首先写一个登录权限过滤类--LoginFilter类实现Filter接口 1 package com.agen.util; 2 3 import java.io.IOException; 4 5 import javax.servlet.Filter; 6 import javax.servlet.Fi

java web项目中jsp页面表单提交给servlet 然后显示空白页面

问题描述 java web项目中jsp页面表单提交给servlet 然后显示空白页面 经检查 servlet没问题 全查可以用 不知道什么原因 求解答 解决方案 哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈解决了 解决方案二: jsp页面显示空白

源代码- java web 项目中,如何实现显示的页面带关键字搜索功能

问题描述 java web 项目中,如何实现显示的页面带关键字搜索功能 我有一个关键字表 表结构如下 Id ID 关键字 Keywords 链接 Link 优先级 priority 0 默认 1初级 2中级 3高级 匹配次数 mateCount 0全文匹配 1只为第一个出现的关键字匹配 里面的数据格式为 ID Keywords Link priority mateCount 1 龙投网 http://www.lootou.cn 3 0 2 股票入门 http://www.lootou.cn/gu

在基于MVC的Web项目中使用Web API和直接连接两种方式混合式接入

在我之前介绍的混合式开发框架中,其界面是基于Winform的实现方式,后台使用Web API.WCF服务以及直接连接数据库的几种方式混合式接入,在Web项目中我们也可以采用这种方式实现混合式的接入方式,虽然Web API或者WCF方式的调用,相对直接连接数据库方式,响应效率上略差一些,不过扩展性强,也可以调动更多的设备接入,包括移动应用接入,网站接入,Winfrom客户端接入,这样可以使得服务逻辑相对独立,负责提供接口即可.这种方式中最有代表性的就是当前Web API的广泛应用,促进了各个接入端

请问在真实企业WEB项目中,一般如何处理异常的。

问题描述 本人正在做毕业设计,是一个WEB系统(有点老土,勿喷 ).自己对异常处理还有日志记录这一块不太懂.想了解下在真实的企业WEB项目中是如何处理异常,并输出日志的.--------------------------------我现在是这样来处理的,定义了一个可嵌套的业务层 checked 异常 BusinessInterruptException extends Exception,再定义了一个 可嵌套的底层 unchecked 异常 DataAccessException extend