【发布时间】:2014-02-24 19:32:08
【问题描述】:
我有一种情况,我使用Camel-Mail 从后端进程生成电子邮件。有时会发送电子邮件,有时不会发送电子邮件。我添加了日志语句来验证 Camel-Mail 组件 在电子邮件没有发出的情况下正在执行。所以我的路由或 Camel-Mail 组件本身出了点问题。
在一个完美的世界里,我想对 Camel-Mail 生成的整个 SMTP 请求进行完整转储,这样我就可以看到它用来连接到SMTP 服务器就在它发出请求之前。我还想确保 Camel-Mail 没有捕获/忽略任何 SMTP/网络异常,或者它没有将它们记录到我永远不会收到日志语句的地方。
我怎样才能从 Java 中做到这一点?我怎样才能看到:
- 如果 Camel 抛出/捕获/忽略任何从未出现在我的应用程序中的异常?或
- 如果Camel在某些情况下无法连接到SMTP服务器;或
- 如果 Camel 在某些情况下没有设置某些 SMTP 属性,会导致 SMTP 服务器忽略或丢弃请求?
【问题讨论】:
-
您检查过垃圾邮件文件夹吗?我知道这听起来很傻,但可能就是这样。此外,如果您可以将骆驼路线添加到问题中,我们将能够查看它。当前问题没有足够的细节来正确回答。
-
如果出现异常或错误,大多数组件的通常行为是抛出它。你能证实你没有在某个地方做
onException(Exception.class).handled().etc...吗?也许甚至请发布您的路由构建器代码。 -
我也可以说我们用2.10的骆驼邮件组件用了很长时间都没有问题。
标签: java smtp apache-camel integration-testing