a52348477 2008-12-18 08:32
浏览 183
已采纳

JavaMail的一个初级问题

今天刚开始学JAVAMAIL遇到个问题,刚开始报javax.mail.AuthenticationFailedException这个错,但是现在什么错也不报了,后台能打出东西,邮件也发不出去.这是为什么呢?请各位帮帮忙.

web.xml



  <servlet>

    <description>This is the description of my J2EE component</description>

    <display-name>This is the display name of my J2EE component</display-name>

    <servlet-name>send</servlet-name>

    <servlet-class>com.servlet.send</servlet-class>

  </servlet>



  <servlet-mapping>

    <servlet-name>send</servlet-name>

    <url-pattern>/send</url-pattern>

  </servlet-mapping>



index.html





<html>

  <head>

    <title>index.html</title>



  </head>

 

  <body>

    <form method="post" action="send">

FROM:<input name="from">


TO  :<input name="to">


Subject:<input name="subject">


Context:<input name="context">

<input type="submit">

    </form>

  </body>

</html>



send.java



public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {



response.setContentType("text/html");

PrintWriter out = response.getWriter();

request.setCharacterEncoding("gb2312");

String from = request.getParameter("from");

String to = request.getParameter("to");

String subject = request.getParameter("subject");

String context = request.getParameter("context");

System.out.println(context + "sddddddddddddddddddddddddddddddd");

// 确定要发送的邮件服务器的地址

String mailserver = "711abc1fd2994d8";

// 设置邮件的传输协议

try {

Properties prop = System.getProperties();

prop.put("mail.smtp.host", mailserver);




// 建立邮件发送的连接

Session session = Session.getDefaultInstance(prop, null);

// 创建发送的信息的载体

Message msg = new MimeMessage(session);

// 设置相关的邮件属性

msg.setFrom(new InternetAddress(from));

// 点到点的发送

msg.setRecipient(Message.RecipientType.TO, new InternetAddress(to));

msg.setSubject(subject);

msg.setSentDate(new Date());

msg.setText(context);

// 发送

Transport.send(msg);

} catch (Exception e) {



}



out.print("send ok");

out.flush();

out.close();

}

  • 写回答

2条回答 默认 最新

  • Jackphone1216 2008-12-19 00:42
    关注

    你需要发送smtp认证

    [code="java"]
    prop.put("mail.smtp.auth", "true");
    [/code]

    完整代码请参考:[url]http://www.rgagnon.com/javadetails/java-0538.html[/url]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛