我需要轮询邮件服务器。因为我的项目已经在Spring中了,所以我使用Spring-Integration来轮询邮件服务器。我在这方面做得很成功。但现在我必须轮询多封电子邮件。能不能有人让我知道怎么做。
这是我用来轮询单个邮件的示例代码。
<util:properties id="javaMailProperties">
<prop key="mail.imap.socketFactory.class">javax.net.ssl.SSLSocketFactory</prop>
<prop key="mail.imap.socketFactory.fallback">false</prop>
<prop key="mail.store.protocol">imaps</prop>
<prop key="mail.debug">false</prop>
</util:properties>
<mail:inbound-channel-adapter id="imapAdapter"
store-uri="${imap.uri}"
channel="recieveEmailChannel"
should-delete-messages="false"
should-mark-messages-as-read="true"
auto-startup="true"
java-mail-properties="javaMailProperties">
<int:poller fixed-delay="${imap.poolerSecondsDelay}" time-unit="SECONDS"/>
</mail:inbound-channel-adapter>
<int:channel id="recieveEmailChannel">
<int:interceptors>
<int:wire-tap channel="logger"/>
</int:interceptors>
</int:channel>
<int:logging-channel-adapter id="logger" level="DEBUG"/>
<int:service-activator input-channel="recieveEmailChannel" ref="emailReceiverService" method="receive"/>
<bean id="emailReceiverService" class="com.usbank.hermes.serviceimpl.EmailReceiverService">
</bean>发布于 2013-07-04 19:34:31
将"max-messages-per-poll“添加到您的轮询器。
即:
<int:poller max-messages-per-poll="10" fixed-delay="${imap.poolerSecondsDelay}" time-unit="SECONDS"/>它应该在每次轮询时从队列中取出10封邮件。
https://stackoverflow.com/questions/17465551
复制相似问题