Spring統合メールを使用して自分のGmailアカウントに受信メッセージを受信しています。メッセージは問題なく受信されますが、私のGmailアカウントには常に読み込まれて表示されます。ここに私のXML構成は次のとおりです。春の統合では、受信したメッセージを常に読み取り済みとしてマークします。
<int:channel id="receiveChannel"/>
replace 'userid and 'password' with the real values
<int-mail:imap-idle-channel-adapter id="customAdapter"
store-uri="imaps://proximahaiz%40gmail.com:[email protected]:993/inbox"
channel="receiveChannel"
auto-startup="true"
should-delete-messages="false"
should-mark-messages-as-read="false"
java-mail-properties="javaMailProperties"
/>
<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 key="mail.debug">false</prop>
</
私は=「偽」が、まだ読んとしてマークされたすべての受信メッセージをお読みください - マーク・メッセージ-として-パラメータを追加しました。 4.2.9.RELEASEバージョンのSpring Integrationを使用します。 これは私のJavaコードです:
public class GmailInboundImapIdleAdapterServiceImpl implements GmailInboundImapIdleAdapterService {
private static Logger logger = Logger.getLogger(GmailInboundImapIdleAdapterServiceImpl.class);
private static String MAIL_SUBJECT = "mail_subject";
private static String MAIL_FROM = "mail_from";
private static EmailParser emailParser = new EmailParser();
@Autowired
private EmailReceiverService emailReceiverService;
@Override
public void startReceiveEmails() {
ApplicationContext acProxy = new ClassPathXmlApplicationContext("/integration/gmail-imap-idle-config-proxytest.xml");
DirectChannel inputChannelProxy = acProxy.getBean("receiveChannel", DirectChannel.class);
inputChannelProxy.subscribe(new MessageHandler() {
@Override
public void handleMessage(Message<?> message) throws MessagingException {
initMessageReceiving(message);
}
});
}
は、私は自分のアプリケーションにそれらを受け取った後Gmailアカウントに未読メッセージを残すために何をしなければなら?
そして、FETCH.PEEKを使用する必要があります(FETCHまたはEXAMINEではなくSELECTを使用する必要があります)。 – Max
迅速な対応をありがとう。アップロードされたログ、あなたはそれらを見て、何が間違っていると言えませんか? –
さらに多くのログを表示する必要があります。それは検索のみを表示します。全部をテキストファイルとしてアップロードできませんか? –