WAP之家:为您提供最全最新的WAP技术,CP.SP.3G等行业资讯。 WAP之家交流论坛全新开放 点击进入>>
WAP资讯 | 3G动态 | SP动态 | 运营商动态 | 内容商动态 | 制造商动态 | 论坛讨论>> 每次自动访问
WAP技术 | WAP源码 | 手机编程 | 手机源码 | 无线技术 | J2ME技术 | 手机软件 添加到收藏夹
IVR技术 | SP资料 | SMS MMS技术 | 商业方案 | IVR下载 | 书籍教程 | 工具软件 语言:繁體中文

WAP之家技术文章WAP教程WAP教程构建WAP邮件发送服务器

构建WAP邮件发送服务器
作者:郑伟  来源:yesky  发布时间:2005-11-29 11:15:58
");

 printwriter.println("");

 printwriter.println("");

 if(flag)

 printwriter.println("");

 else

 printwriter.println("");

 if(flag1)

 printwriter.println("");

 else

 printwriter.println("");

 if(flag2)

 printwriter.println("");

 else

 printwriter.println("");

 if(flag3)

 printwriter.println("");

 else

 printwriter.println("");

 printwriter.println("");

 printwriter.println("");


if(flag)

printwriter.println("
From:

");

if(flag1)

printwriter.println("
T emptyok=\"false\"/>

");

if(flag2)

printwriter.println("
Subject: "\" emptyok=\"true\"/>

");

if(flag3)

printwriter.println("
Message: "\" emptyok=\"false\"/>

");

printwriter.println("");

printwriter.println("");

printwriter.flush();

printwriter.close();

}

public void doPost(HttpServletRequest httpservletrequest, HttpServletResponse
httpservletresponse)

throws ServletException, IOException

{

PrintWriter printwriter = null;

Hashtable hashtable = null;

Hashtable hashtable1 = null;

String s = httpservletrequest.getQueryString();

httpservletresponse.setContentType("text/vnd.wap.wml");

printwriter = httpservletresponse.getWriter();

printwriter.println("");



if(s == null)

{

printwriter.println("");

printwriter.println("");

printwriter.println("
");

printwriter.println("WapMailer: Can't read template file");

printwriter.println("

");

printwriter.println("");

printwriter.println("");

printwriter.flush();

printwriter.close();

return;

}

hashtable1 = getTemplate(s);

if(hashtable1.size() == 0)

{

printwriter.println("");

printwriter.println("");

printwriter.println("
");

printwriter.println("WapMailer: Can't read template file");

printwriter.println("

");

printwriter.println("");

printwriter.println("");

printwriter.flush();

printwriter.close();

return;

}

if(hashtable1.get("PORT") == null || hashtable1.get("FROM") == null ||
hashtable1.get("TO") == null || hashtable1.get("MAILHOST") == null ||
hashtable1.get("DOMAIN") == null)

{

printwriter.println("");

printwriter.println("");

printwriter.println("
");

printwriter.println("WapMailer: Can't send mail. Check template file");

printwriter.println("

");

printwriter.println("");

printwriter.println("");

printwriter.flush();

printwriter.close();

return;

}

hashtable = new Hashtable();

String s1;

for(Enumeration enumeration = httpservletrequest.getParameterNames();
enumeration.hasMoreElements(); hashtable.put(s1.toUpperCase(),
decodeString(httpservletrequest.getParameter(s1),
httpservletrequest.getCharacterEncoding(), (String)hashtable1.get("ENCODING"))))

s1 = (String)enumeration.nextElement();

boolean flag = letterToNet(hashtable, hashtable1);

printwriter.println("");

printwriter.println("");

printwriter.println("
");

if(flag)

printwriter.println("WapMailer: your message has been send");

else

printwriter.println("WapMailer: Can't send mail");

printwriter.println("

");

printwriter.println("");

printwriter.println("");

printwriter.flush();

printwriter.close();

}
public String getServletInfo()

{

return "WapMailer mailt waynezheng@chinaren.com";

}

private boolean letterToNet(Hashtable hashtable, Hashtable hashtable1)

{

smtpMail smtpmail = new smtpMail();

String s1 = prepareString((String)hashtable1.get("MAILHOST"), hashtable);

String s2 = prepareString((String)hashtable1.get("DOMAIN"), hashtable);

int i;

try

{

i = Integer.parseInt(prepareString((String)hashtable1.get("PORT"),
hashtable));

}

catch(Exception _ex)

{

return false;

}

if(s1 == null)

return false;

String s;

String s3;

if((s = (String)hashtable1.get("FROM")) == null)

s3 = (String)hashtable.get("FROM");

else

if(s.indexOf("$") < 0)

s3 = (String)hashtable.get("FROM");

else

s3 = prepareString(s, hashtable);

String s4;

if((s = (String)hashtable1.get("TO")) == null)

s4 = (String)hashtable.get("TO");

else

if(s.indexOf("$") < 0)

s4 = (String)hashtable.get("TO");

else

s4 = prepareString(s, hashtable);

if(smtpmail.open(s1, i) != 1)

return false;

smtpmail.setDomain(s2);

smtpmail.setFrom(s3);

smtpmail.setTo(s4);

if((s = (String)hashtable1.get("SUBJECT")) == null)

s = (String)hashtable.get("SUBJECT");

else

if(s.indexOf("$") < 0)

s = (String)hashtable.get("SUBJECT");

else

s = prepareString(s, hashtable);

smtpmail.addHeader("Subject", s);

if((s = (String)hashtable1.get("CC")) == null)

s = "";

else

s = prepareString(s, hashtable);

if(s.length() > 0)

smtpmail.addHeader("Cc", s);

if((s = (String)hashtable1.get("BODY")) == null)

s = (String)hashtable.get("BODY");

else

if(s.indexOf("$") < 0)

s = (String)hashtable.get("BODY");

else

s = prepareString(insertFiles(s), hashtable);



smtpmail.addData(s);

if((s = (String)hashtable1.get("ATTACH")) != null)

{

s = prepareString(s, hashtable);

for(StringTokenizer stringtokenizer = new StringTokenizer(s, " ,");
stringtokenizer.hasMoreTokens(); smtpmail.addAttachment(s))

s = stringtokenizer.nextToken();

}

if(smtpmail.transmit() != 1)

{

return false;

}

else

{

smtpmail.close();

return true;

}

}

private String insertFiles(String s)

{

String s1 = s.toUpperCase();

int i;

if((i = s1.indexOf("$FILE=")) < 0)

return s;

String s2;

if(i == 0)

s2 = "";

else

s2 = s.substring(0, i) + NEWLINE;

s1 = s.substring(i + "$FI

上一页  [1] [2] [3] [4]  下一页

[] [返回上一页] [打 印]
文章评论

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码