-----------------------html页面------------
<form name="form1" method="post" action="testmail.jsp">
<table width="75" border="0" align="center" cellspacing="1" bgcolor="#006600" class="black">
<tr bgcolor="#FFFFFF">
<td width="24%">收信人地址:</td>
<td width="76%">
<input name="to" type="text" id="to"></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>主题:</td>
<td>
<input name="title" type="text" id="title"></td>
</tr>
<tr>
<td height="107" colspan="2" bgcolor="#FFFFFF">
<textarea name="content" cols="50" rows="5" id="content"></textarea></td>
</tr>
<tr align="center">
<td colspan="2" bgcolor="#FFFFFF">
<input type="submit" name="Submit" value="发送">
<input type="reset" name="Submit2" value="重置">
</td>
</tr>
</table>
</form>---------------------------------testmail.jsp---------------
<%@ page contentType="text/html;charset=gb2312" %>
<%request.setCharacterEncoding("gb2312");%>
<%@ page import="java.util.*,javax.mail.*"%>
<%@ page import="javax.mail.internet.*"%> <%
String tto="[email protected]";
String ttitle="您的用户注册信息,请保存好!";
String tcontent="",tmp="";
//tmp=tmp+"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">";
tmp=tmp+"<style type=\"text/css\">";
tmp=tmp+"body,td,p,th{font-size:14px;line-height:180%;}";
tmp=tmp+"input{font-size:12px;}";
tmp=tmp+"</style>";
tmp=tmp+"张晓先生,您好,<br>";
tmp=tmp+" 您已经成功注册为柳州163(<a href=\"http://www.liuzhou163.com\" target=\"_blank\">www.liuzhou163.com</a>)的普通会员,您的注册信息如下:<br>";
tmp=tmp+" 用户名:omob<br>";
tmp=tmp+" 密码:omob888<br>";
tmp=tmp+" 腾讯通自动为您开通,免费试用三个月:账号为1052,密码默认为:omob888<br>";
tmp=tmp+"快快体验视频会议,腾讯通客用户端<a href=\"http://rtx.tencent.com/download/RTXCLT_361_ADV_Build_2468.exe\" target=\"_blank\">下载地址</a>,服务器地址:mn.liuzhou163.com 端口:8000<br>";
tmp=tmp+"请保管好以上信息,这是您今后使用本网的相关服务所必需的。<br><br>";
tmp=tmp+"柳州163 也叫做“柳州视窗”,您的本地网络生活从此开始!<br>";
tmp=tmp+"您可以发布个人求职,招聘,宣传产品,房产,视频会议,投放广告等业务,";
tmp=tmp+"<a href=\"http://www.liuzhou163.com/login/login.jsp\">现在访问看看吧!</a><br>";
tmp=tmp+"-------------------------------------------------------------------<br>";
tmp=tmp+"柳州视窗陪你度过每一天-- 柳州163!";
tmp=tmp+"<br>";
tcontent=tmp+"";
out.print(tcontent);
%>
<%//发送主程序开始
try{
//从html表单中获取邮件信息
Properties props=new Properties();//也可用Properties props = System.getProperties();
props.put("mail.smtp.host","smtp.sina.com");//存储发送邮件服务器的信息
props.put("mail.smtp.auth","true");//同时通过验证
Session s=Session.getInstance(props);//根据属性新建一个邮件会话
s.setDebug(true);
MimeMessage message=new MimeMessage(s);//由邮件会话新建一个消息对象
//设置邮件
InternetAddress from=new InternetAddress("[email protected]","柳州163");
message.setFrom(from);//设置发件人
InternetAddress to=new InternetAddress(tto);
message.setRecipient(Message.RecipientType.TO,to);//设置收件人,并设置其接收类型为TO
message.setSubject(ttitle);//设置主题
/*还要防乱码 JAVA在网络传输中使用的编码是"ISO-8859-1",故在输出时需要进行转化,如:
String str="中文";
str=new String(str.getBytes("GB2312"),"8859_1");
但如果在编译程序时,使用的编码是“GB2312”,且在中文平台上运行此程序,不会出现此问题,一定要注意。
从参数中读取中文
这正好与在网页中输出相反如:
*/
//tcontent=new String(tcontent.getBytes("8859_1"),"GB2312");
tcontent=new String(tcontent.getBytes("GB2312"),"8859_1");
//message.setText(tcontent);//这个也可以发,但不支持html设置信件内容
message.setContent(tcontent, "text/html");//用html形式来发送内容
message.setSentDate(new Date());//设置发信时间
//发送邮件
message.saveChanges();//存储邮件信息
Transport transport=s.getTransport("smtp");
transport.connect("smtp.sina.com","liu_zhou163","000000");//以smtp方式登录邮箱
transport.sendMessage(message,message.getAllRecipients());//发送邮件,其中第二个参数是所有
//已设好的收件人地址
transport.close();
//,说明发送成功。
out.println(" 发送成功转向?sendok=1");
}catch(MessagingException e){
//out.println(e.toString()); //提示错误,说明发送不成功。
out.println(" 发送不成功转向?sendok=0");
}
%>
--------------------------出错----------------------2008-6-14 18:29:22 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSPAn error occurred at line: 15 in the jsp file: /testmail.jsp
Generated servlet error:
Session cannot be resolved to a type
<form name="form1" method="post" action="testmail.jsp">
<table width="75" border="0" align="center" cellspacing="1" bgcolor="#006600" class="black">
<tr bgcolor="#FFFFFF">
<td width="24%">收信人地址:</td>
<td width="76%">
<input name="to" type="text" id="to"></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>主题:</td>
<td>
<input name="title" type="text" id="title"></td>
</tr>
<tr>
<td height="107" colspan="2" bgcolor="#FFFFFF">
<textarea name="content" cols="50" rows="5" id="content"></textarea></td>
</tr>
<tr align="center">
<td colspan="2" bgcolor="#FFFFFF">
<input type="submit" name="Submit" value="发送">
<input type="reset" name="Submit2" value="重置">
</td>
</tr>
</table>
</form>---------------------------------testmail.jsp---------------
<%@ page contentType="text/html;charset=gb2312" %>
<%request.setCharacterEncoding("gb2312");%>
<%@ page import="java.util.*,javax.mail.*"%>
<%@ page import="javax.mail.internet.*"%> <%
String tto="[email protected]";
String ttitle="您的用户注册信息,请保存好!";
String tcontent="",tmp="";
//tmp=tmp+"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">";
tmp=tmp+"<style type=\"text/css\">";
tmp=tmp+"body,td,p,th{font-size:14px;line-height:180%;}";
tmp=tmp+"input{font-size:12px;}";
tmp=tmp+"</style>";
tmp=tmp+"张晓先生,您好,<br>";
tmp=tmp+" 您已经成功注册为柳州163(<a href=\"http://www.liuzhou163.com\" target=\"_blank\">www.liuzhou163.com</a>)的普通会员,您的注册信息如下:<br>";
tmp=tmp+" 用户名:omob<br>";
tmp=tmp+" 密码:omob888<br>";
tmp=tmp+" 腾讯通自动为您开通,免费试用三个月:账号为1052,密码默认为:omob888<br>";
tmp=tmp+"快快体验视频会议,腾讯通客用户端<a href=\"http://rtx.tencent.com/download/RTXCLT_361_ADV_Build_2468.exe\" target=\"_blank\">下载地址</a>,服务器地址:mn.liuzhou163.com 端口:8000<br>";
tmp=tmp+"请保管好以上信息,这是您今后使用本网的相关服务所必需的。<br><br>";
tmp=tmp+"柳州163 也叫做“柳州视窗”,您的本地网络生活从此开始!<br>";
tmp=tmp+"您可以发布个人求职,招聘,宣传产品,房产,视频会议,投放广告等业务,";
tmp=tmp+"<a href=\"http://www.liuzhou163.com/login/login.jsp\">现在访问看看吧!</a><br>";
tmp=tmp+"-------------------------------------------------------------------<br>";
tmp=tmp+"柳州视窗陪你度过每一天-- 柳州163!";
tmp=tmp+"<br>";
tcontent=tmp+"";
out.print(tcontent);
%>
<%//发送主程序开始
try{
//从html表单中获取邮件信息
Properties props=new Properties();//也可用Properties props = System.getProperties();
props.put("mail.smtp.host","smtp.sina.com");//存储发送邮件服务器的信息
props.put("mail.smtp.auth","true");//同时通过验证
Session s=Session.getInstance(props);//根据属性新建一个邮件会话
s.setDebug(true);
MimeMessage message=new MimeMessage(s);//由邮件会话新建一个消息对象
//设置邮件
InternetAddress from=new InternetAddress("[email protected]","柳州163");
message.setFrom(from);//设置发件人
InternetAddress to=new InternetAddress(tto);
message.setRecipient(Message.RecipientType.TO,to);//设置收件人,并设置其接收类型为TO
message.setSubject(ttitle);//设置主题
/*还要防乱码 JAVA在网络传输中使用的编码是"ISO-8859-1",故在输出时需要进行转化,如:
String str="中文";
str=new String(str.getBytes("GB2312"),"8859_1");
但如果在编译程序时,使用的编码是“GB2312”,且在中文平台上运行此程序,不会出现此问题,一定要注意。
从参数中读取中文
这正好与在网页中输出相反如:
*/
//tcontent=new String(tcontent.getBytes("8859_1"),"GB2312");
tcontent=new String(tcontent.getBytes("GB2312"),"8859_1");
//message.setText(tcontent);//这个也可以发,但不支持html设置信件内容
message.setContent(tcontent, "text/html");//用html形式来发送内容
message.setSentDate(new Date());//设置发信时间
//发送邮件
message.saveChanges();//存储邮件信息
Transport transport=s.getTransport("smtp");
transport.connect("smtp.sina.com","liu_zhou163","000000");//以smtp方式登录邮箱
transport.sendMessage(message,message.getAllRecipients());//发送邮件,其中第二个参数是所有
//已设好的收件人地址
transport.close();
//,说明发送成功。
out.println(" 发送成功转向?sendok=1");
}catch(MessagingException e){
//out.println(e.toString()); //提示错误,说明发送不成功。
out.println(" 发送不成功转向?sendok=0");
}
%>
--------------------------出错----------------------2008-6-14 18:29:22 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSPAn error occurred at line: 15 in the jsp file: /testmail.jsp
Generated servlet error:
Session cannot be resolved to a type
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货