Java Applet 如何运行?

bowlder 2001-06-25 03:32:35
我写了一个 java applet ,页面上起先有一个send按钮,我在action事件中用按钮触发邮件类,邮件可以正常发送,而我想实现打开页面即发邮件,于是我将new sendMsg()直接写在init()里面,并且去掉了init()里面其他的东西。页面打开后并没有收到邮件,请问是为什么?如何使new sendMsg 在页面打开后就被创建。请指教,谢谢!

public boolean action(Event e, Object arg)
{
if (arg.equals("SEND"))
new sendMsg(getParameter("from"),getParameter("to"), getParameter("subject"));
else
return super.action(e, arg);
return true;
}
...全文
171 2 打赏 收藏 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
bowlder 2001-06-26
  • 打赏
  • 举报
回复
我也试过了,还是不行。
每次用户在移至其他页面之后,再返回这个页面时,start()都会被再次调用,而这是我不希望的,所以我想还是应该放在init()里面。

public class MailApplet extends Applet
{ private int SMTP_PORT = 25;
//邮件服务器缺省端口号
private String appletSource = "mail.smpt.com";
//作者邮件服务器IP
private TextArea MsgArea;
private TextField senderField, recipientField, SubjectField;
public void init()
{
//此处调用无效
new sendMsg(getParameter("a"),getParameter("b"), getParameter("c"));
}
public boolean handleEvent(Event e)
{
if (e.id == Event.WINDOW_DESTROY)
System.exit(0);
return super.handleEvent(e);
}
public boolean action(Event e, Object arg)
{
if (arg.equals("SEND"))
//此处可以正常调用
new sendMsg(getParameter("a"),getParameter("b"), getParameter("c"));
else
return super.action(e, arg);
return true;
}
}
class sendMsg
{
public void sendMas(){}
public sendMsg(String sender, String recipient, String Subject)
{ try
{
Properties props = System.getProperties();
props.put("mail.smtp.host","mail.hnair.com");
Session session = Session.getDefaultInstance(props, null);
session.setDebug(false);
Message msg = new MimeMessage(session);
//sender=getParameter("from");
if (sender != null)
msg.setFrom(new InternetAddress(sender));
else
msg.setFrom();
msg.setRecipients(Message.RecipientType.TO,InternetAddress.parse(recipient, false));
msg.setSubject(Subject);
msg.setText("content");
msg.setHeader("X-Mailer", "msgsend");
msg.setSentDate(new Date());
Transport.send(msg);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
gaoql 2001-06-25
  • 打赏
  • 举报
回复
放在start()里试试
public void start(){
//.............
}
源码直接下载地址: https://pan.quark.cn/s/0c43ed5159df 本资源为HCDA认证培训教程,旨在面向准备参加HCDA考试的学员,或希望掌握TCP/IP基础、路由、交换技术、广域网、以太网技术基本原理以及华为通用路由平台VRP上实现的相关内容。具体涵盖的模块包括:Module 1-网络互联基础、Module 2-路由和路由协议基础与实现、Module 3-以太网交换技术基础与实现、Module 4-广域网技术基本原理与实现、Module 5-网络安全基础、Module 6-华为数通产品概述 ### 华为-NAT技术详解 #### 一、概述 NAT(Network Address Translation,网络地址转换)是一种在专用网络内部使用私有IP地址的情况下,使这些设备能够通过公有IP地址进行外部通信的技术手段。NAT技术在多种网络环境中得到广泛应用,特别是在企业网络中发挥着关键性作用。作为HCDA认证培训教程的一部分,本文档将系统性地阐述NAT的基础理论及其实现方法,并深入探讨在华为VRP平台上的具体应用场景。 #### 二、NAT处理流程 NAT处理流程主要包含两种类型:基于源IP地址和基于目的IP地址的处理模式。 ##### 1. 基于源IP地址的NAT处理 **1.1 一对一NO-PAT** 一对一NO-PAT即非端口地址转换(No-Port Address Translation),在这种模式下,一个私有IP地址对应一个公有IP地址,不涉及端口号的转换。当配置了NAT no-pat时,华为设备会为已配置的多通道协议产生的实际流量数据建立server-map表项。这种方式适用于需要固定公网IP的服务器等场景。 **1.2 多对一...

62,620

社区成员

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

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