私は、GMail の受信トレイから電子メールを送信し、そこから電子メールを読み取り、アカウントを介して送信されたが、受信者のアドレスが認識されないために返された未配信のメール メッセージを処理する春のアプリを持っています。
私はこれをすべて設定して動作させていますが、返されたメールが読まれたときに取得したい送信メッセージにカスタムヘッダーも設定しています。アプリをデバッグすると、メッセージが正しく読み取られていることが示されますが、カスタム ヘッダー値がありません。
これが私の設定です:
<mail:inbound-channel-adapter id="imapAdapter"
store-uri="#{mailIntegrationProperties['mail.imap.url']}"
java-mail-properties="mailIntegrationProperties"
channel="receiveEmailChannel"
should-delete-messages="false"
should-mark-messages-as-read="true"
auto-startup="true"
max-fetch-size="#{mailIntegrationProperties['mail.max.fetch.size']}">
<int:poller time-unit="SECONDS" fixed-rate="#{mailIntegrationProperties['mail.poller.seconds']}" />
</mail:inbound-channel-adapter>
<int:channel id="receiveEmailChannel" />
<bean id="mailMessageReceiver" class="com.myapp.integration.mail.EmailMessageReceiver" />
<int:service-activator input-channel="receiveEmailChannel" ref="mailMessageReceiver" output-channel="emailEventMessageQueue" method="receive" />
簡潔にするためにサービスアクティベーターの出力チャネルをオフのままにしましたが、システムは期待どおりに機能していますが、メッセージを処理しているときにカスタムヘッダーだけが欠落しています。
そのカスタム ヘッダーを読み取るように Spring を構成する方法についてのアイデアはありますか?
乾杯!