【发布时间】:2012-02-23 20:52:33
【问题描述】:
我需要一个 Java Web 小程序通过 SMTP 发送自动电子邮件。从编程的角度来看,我对服务器和通信比较陌生。因此,我没有使用 servlet,只是在我的 web 小程序中运行 java 邮件 api。当我通过 Netbeans 运行它并使用 Glassfish 时,它运行良好。我想把它放到公司的服务器上,这样就可以从他们的网站上运行。
我知道如何嵌入小程序等,但我不确定电子邮件服务将如何工作。据我了解,我需要在服务器的类路径上或在小程序运行时在附近的目录中设置适当的 jar 文件(邮件、激活、pop3 等)。我假设该服务器将执行类似于 Glassfish 的操作,因为我可以在 netbeans 之外编译和运行小程序中的所有内容,但是当小程序尝试发送电子邮件时会出现 classnotfound/classnotdef 错误。这似乎是由于缺少类似于 Glassfish 的服务器环境。
同样,我对服务器通信和结构这一领域还很陌生,因此任何有助于介绍的指南都会很有用。除此之外,任何快速启动的建议也将不胜感激,以暂时让工作进展顺利。
最后,Glassfish 和 Apache 和 Tomcat 等其他服务究竟为 Netbeans 提供了什么?他们似乎需要在 Netbeans 中开发任何与 Web 相关的东西,尽管我可以在 Netbeans 之外运行小程序(不包括邮件服务),它实际上在做什么?它是模仿完整服务器流程的人造服务器吗?我花了几个小时试图了解有关这些事情的更多信息,但对于我发现的所有这些,并没有一个基本的方法/原因。
感谢您的任何指导。
【问题讨论】:
-
“我知道如何嵌入小程序等” 你确定吗?它似乎被.. “但是当小程序尝试发送电子邮件时出现 classnotfound/classnotdef 错误”。你得到了什么确切的异常,里面的那些类(throwables 中提到的那些)是什么罐子?
-
您希望客户端还是服务器发送电子邮件? Applet 在客户端上运行,servlet 在服务器上运行——每个都有一个单独的类路径。最好在服务器上发送电子邮件,但更难设置
-
所以,所有的图形和常规功能在小程序中都可以正常工作。当调用 send message 函数时,它会向终端吐出 classnotfound/classnotdef 错误。它无法找到指向邮件 jar 的 javax/mail/address。我将把它放在服务器上的什么位置,我需要将小程序定向到它吗?在这一点上,我相信客户正在发送电子邮件。我现在很好,它没有做一个庞大的邮件列表或任何繁重的任务。