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 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败