【发布时间】:2014-05-01 19:15:15
【问题描述】:
我正在尝试使用消息驱动 bean 接收电子邮件。我正在使用 jboss Wildfly。不幸的是,我找不到关于它的真实文档。这是迄今为止我发现的最多的:
@MessageDriven(activationConfig={
@ActivationConfigProperty(propertyName="mailServer", propertyValue="imap.gmail.com"),
@ActivationConfigProperty(propertyName="mailFolder", propertyValue="INBOX"),
@ActivationConfigProperty(propertyName="storeProtocol", propertyValue="imap"),
@ActivationConfigProperty(propertyName="userName", propertyValue="me@gmail.com"),
@ActivationConfigProperty(propertyName="password", propertyValue="xxx")
})
@ResourceAdapter("mail-ra.rar")
public class EMailReceiver implements MailListener {
@Override
public void onMessage(Message msg) {
System.out.println("MSG: " + msg.toString());
}
}
我有几个关于如何完成这项工作的问题。很抱歉将它们全部归为一个问题,但我相信它们是一体的。
- 这个 ResourceAdapter 是什么?我可以找到 ResourceAdapter 类,但找不到注解。
- 我在哪里可以得到正确的 mail-ra.rar,我应该把它放在哪里?我认为这可能有不同的版本,我在 wildfly 中找不到。
- 注解配置是否足够,或者我需要在 xml 中配置任何内容吗?
【问题讨论】:
-
mail-ra.rar由 IronJacamar 项目提供。 AS7 的forum post 也可能对 Wildfly 有所帮助。 Tbh,在查看了提供的文档几分钟后,我感到害怕并跑回基于 Timer 的 EJB 的安全性。由于您使用 gmail 作为示例,我认为如果您轮询(使用计时器服务)而不是对消息做出反应(无论如何,这些消息将由轮询服务生成),那么您可以节省大量工作。 -
谢谢。我想我也会去计时器路线。 MDB 看起来很诱人,因为它看起来像是一个开箱即用的解决方案。但我想不是。
标签: email jakarta-ee jboss message-driven-bean wildfly