急急急! 用javamail写了一个发信程序,可是报"javax.mail.NoSuchProviderException: No provider for pop3 pr

songzongquan 2002-05-08 06:49:57
我的服务器是存在的,并且用outlook等工具都可以收发,我写的测试程序和服务器在一个机器上,用resin 做后台,

源码如下:
信的内容是从表单提交的.
<%@ page import="java.util.*, javax.mail.*,javax.activation.*,javax.mail.internet.*" %>
<%
Properties props = new Properties();
props.put("mail.smtp.host", "mail.hn.setc.gov.cn");
Session s = Session.getDefaultInstance(props,null);
MimeMessage message = new MimeMessage(s);

InternetAddress from = new InternetAddress("webmaster@hn.setc.gov.cn");
message.setFrom(from);
String toAddress = request.getParameter("to");
out.print(toAddress);
InternetAddress to = new InternetAddress(toAddress);
message.addRecipient(Message.RecipientType.TO, to);

String subject = request.getParameter("subject");
message.setSubject(subject);
String text = request.getParameter("text");
message.setText(text);
Transport trans;
// trans=s.getTransport("smtp");
//trans.connect("smtp.371.net","song_zongquan","12kiss");
//trans.send(message);
Store store=s.getStore("pop3");
store.connect("mail.hn.setc.gov.cn","webmaster","123456");


%>
<html>
<p align="center">The Message has been sent.<br>Check your inbox.</p>
<p align="center"><a href="sendmail.html">Click here to send another!</a></p>
</html>
...全文
348 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
songzongquan 2002-05-09
  • 打赏
  • 举报
回复
问题解决了,我按skyyoung的方法把所胡的jar文件包含了,程序没改动一下就通过了。谢谢大家。
songzongquan 2002-05-09
  • 打赏
  • 举报
回复
谢谢skyyoung,我按你的试试吧,
pengji 2002-05-09
  • 打赏
  • 举报
回复
Properties properties = System.getProperties();
/***************************************************/
//add this line!!!
properties.put("mail.transport.protocol", "smtp");
/***************************************************/
properties.put("mail.smtp.host", "mail.hn.setc.gov.cn");
s = Session.getInstance(properties, null);
skyyoung 2002-05-09
  • 打赏
  • 举报
回复
put the imap.jar , mail.jar , mailapi.jar , pop3.jar , smtp.jar to classpath . if u has no these jar files , email me , i sent them to u .

---------------
shmilu@sina.com
songzongquan 2002-05-09
  • 打赏
  • 举报
回复
应用服务是resin+linux+jdk1.3 ,我下了你说的javamail,我将它加在了resin的lib中,不过我没有在classpath中设mail.jar ,这个好象不用也行,我别的语句都可执行,就到transport.send(message)时才出这个错误,好象是发送时找不到合法服务器一样,我不知道我理解的对不对,但我的服务器却实存在.很怪.希望对javamail熟悉的朋友给于指点
littlecong 2002-05-08
  • 打赏
  • 举报
回复
你用的是什么应用服务器?
如果你用的javamail是从javasoft下载的,应该保证classpath中有mail.jar
或者保证mail.jar在classpath靠前的位置

62,627

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧