1个简单JSP问题,进来留言的都有高分。谢谢

xzsawq 2004-11-07 02:43:42
发送邮件的简单例子,一共2个JSP文件。

main.jsp
<html>
<head>
<title>在JSP中发送邮件</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb239">
</head>
<body bgcolor="#FFFFFF">
<div align="center">
<p><b>如何在JSP中发送邮件</b> </p>
<form method="post" action="compose.jsp">
<table width="70%" border="1">
<tr>
<td bgcolor="#CCCCFF" width="31%">
<div align="right"><b><font color="#FF0033">收件人地址:</font></b></div>
</td>
<td bgcolor="#FFCCCC" width="69%">
<input type="text" name="recipients" size="40">
</td>
</tr>
<tr>
<td bgcolor="#CCCCFF" width="31%">
<div align="right"><b><font color="#FF0033">主题:</font></b></div>
</td>
<td bgcolor="#FFCCCC" width="69%">
<input type="text" name="subject" size="40">
</td>
</tr>
<tr>
<td bgcolor="#CCCCFF" width="31%">
<div align="right"><b><font color="#FF0033">内容:</font></b></div>
</td>
<td bgcolor="#FFCCCC" width="69%">
<textarea name="content" cols="40" rows="6"></textarea>
</td>
</tr>
<tr>
<td bgcolor="#CCCCFF" width="31%">
<div align="right"><b><font color="#FF0033">发信人地址:</font></b></div>
</td>
<td bgcolor="#FFCCCC" width="69%">
<input type="text" name="addresser" size="40">
</td>
</tr>
<tr>
<td bgcolor="#CCCCFF" width="31%">
<div align="right"><b><font color="#FF0033">邮件服务器:</font></b></div>
</td>
<td bgcolor="#FFCCCC" width="69%">
<input type="text" name="host" size="40">
</td>
</tr>
<tr bgcolor="#FF9966">
<td colspan="2">
<div align="center">
<input type="submit" name="Submit" value="发 邮 件">
<input type="reset" name="Submit2" value="重 写">
</div>
</td>
</tr>
</table>
</form>
<p> </p>
</div>
</body>
</html>

compose.jsp
<%@ page contentType="text/html;charset=GB2312"%>
<%@ page import="sun.net.smtp.SmtpClient,java.io.*"%>
<%
String addresser,recipients,subject,content,mailserver;
addresser=request.getParameter("addresser");
recipients=request.getParameter("recipients");
subject=request.getParameter("subject");
content=request.getParameter("content");
mailserver=request.getParameter("mailserver");
try {
SmtpClient host = new SmtpClient(mailserver);/////////////////////////这行有错
host.from(addresser);
host.to(recipients);
PrintStream MailMessage=host.startMessage();
MailMessage.println("收件人地址:"+recipients);
MailMessage.println("主题:"+subject);
MailMessage.println("内容:"+content);
MailMessage.println("发信人地址:"+addresser);
MailMessage.println("邮件服务器:"+mailserver);
host.closeServer();
out.println("成功发送");
}
catch(Exception e){
out.println(e.getMessage());
}
%>
就是那一行出异常,请大家帮我改改,谢谢
...全文
309 28 打赏 收藏 转发到动态 举报
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
jFresH_MaN 2004-11-09
  • 打赏
  • 举报
回复
恩,我正需要这个呢
搬个凳子坐下来学习
呵呵
wifi2018 2004-11-09
  • 打赏
  • 举报
回复
收藏
heroflying 2004-11-09
  • 打赏
  • 举报
回复
帮你up
还没做过邮件那
^_^
yuanxiaojin 2004-11-08
  • 打赏
  • 举报
回复
路过帮顶!^^^^^^^^^
fmzbj 2004-11-08
  • 打赏
  • 举报
回复
没有做过,帮你顶!
mrjonson 2004-11-08
  • 打赏
  • 举报
回复
不太懂呀!
catblue 2004-11-08
  • 打赏
  • 举报
回复
up
xiaoya317 2004-11-08
  • 打赏
  • 举报
回复
up···
java_ak47 2004-11-08
  • 打赏
  • 举报
回复
zhz586 2004-11-08
  • 打赏
  • 举报
回复
try{
Properties props = new Properties();
props.put("mail.smtp.host", "localhost"); //存储发送邮件服务器的信息
props.put("mail.smtp.auth", "true"); //同时通过验证
Session s = session.getInstance(props);//根据属性新建一个邮件会话
s.setDebug(true);
MimeMessage message = new MimeMessage(s);//由邮件会话新建一个消息对象
InternetAddress fromAddress = new InternetAddress("webmaster@xxx.com");
message.setFrom(fromAddress);//设置发件人
InternetAddress toAddress = new InternetAddress(to);
message.setRecipient(Message.RecipientType.TO,toAddress);

message.setSubject(subject);//设置主题
message.setText(content);//设置信件内容
message.setSentDate(new Date());//设置发信时间
message.saveChanges();//存储邮件信息
Transport transport=s.getTransport("smtp");
transport.connect("localhost", "webmaster@xxx.com", "web");
transport.sendMessage(message, message.getAllRecipients());
transport.close();
System.out.println("邮件发送成功!");
}
catch(Exception ex){
System.out.println(ex.getMessage());
}
cnidb 2004-11-08
  • 打赏
  • 举报
回复
//下面的代码是以前我用的.刚才测试了一下.正常无错

<%@ page contentType="text/html; charset=GB2312" language="java" import="java.util.*,java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="javax.mail.*"%>
<%@ page import="javax.mail.internet.*"%>
<%@ page import="javax.activation.*"%>

<html>
<head>
<title>javaMail邮件发送</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

</head>

<body leftmargin="0" topmargin="0">

<% java.util.Date d = new java.util.Date();
String dd,overTime,str1,str2,str4,str5,str6;
int result=1;
String mailserver,From,To,Subject,messageText;
boolean sessionDebug=false;

InternetAddress address[]=null;

mailserver="用来发信的smtp邮局地址";

From = new String(request.getParameter("email").trim()); //发信人

To = new String(request.getParameter("toEmail").trim()); //收信人

Subject = new String(request.getParameter("Subject").trim());

messageText = new String(request.getParameter("body").trim());

if(messageText!=null&&Subject!=null&&From!=null&&To!=null)
{

try{
java.util.Properties props=System.getProperties();
props.put("mail.host",mailserver);
props.put("mail.transport.protocol","smtp");
props.put("mail.transport.user","用来发信的smtp邮箱帐号");
props.put("mail.transport.password","用来发信的smtp邮箱密码");
javax.mail.Session mailSession=javax.mail.Session.getDefaultInstance(props,null);
mailSession.setDebug(sessionDebug);

Message msg=new MimeMessage(mailSession);

msg.setFrom(new InternetAddress(From));

address=InternetAddress.parse(To,false);

msg.setRecipients(Message.RecipientType.TO,address);

msg.setSubject(Subject);

msg.setSentDate(new java.util.Date());

messageText=messageText + "<br><br>在线邮件发送系统";
msg.setText(messageText);

msg.setContent(messageText,"text/html;charset=GB2312");

Transport.send(msg);

System.out.println("javaMail SendMail");
}
catch(MessagingException mex){
mex.printStackTrace();
}
}

%>
</body>
</html>
xieqingtao 2004-11-08
  • 打赏
  • 举报
回复
up
debug148 2004-11-08
  • 打赏
  • 举报
回复
ding
snow_jin 2004-11-08
  • 打赏
  • 举报
回复
up 接分! ^-^
jianeng310 2004-11-08
  • 打赏
  • 举报
回复
好 顶
紫翎观星 2004-11-08
  • 打赏
  • 举报
回复
帮顶!
dafei0320 2004-11-08
  • 打赏
  • 举报
回复
怎么没有这些啊 --那怎么发啊-
String mailserver,From,To,Subject,messageText;
boolean sessionDebug=false;

InternetAddress address[]=null;

mailserver="发信服务器";

From = new String(request.getParameter("email").trim()); //发信人

To = new String(request.getParameter("toEmail").trim()); //收信人

Subject = new String(request.getParameter("Subject").trim());//标题

messageText = new String(request.getParameter("body").trim());//内容
在网上找找其他的参数看看>)
chg2008 2004-11-07
  • 打赏
  • 举报
回复
还没用到这个,帮顶
packer 2004-11-07
  • 打赏
  • 举报
回复
关注
haroyy 2004-11-07
  • 打赏
  • 举报
回复
把报错信息贴出来啦
加载更多回复(8)

81,092

社区成员

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

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