2017-07-11 8 views
0

私の目標は、Mirth Connectチャンネルを通じてメールを読んだり(受信トレイで読むことができるかもしれない)ことです。私はこの問題についてReading mail from open source Mirthconnectの質問を見つけました。奇妙なことに、質問する人が質問に答えました。私は、彼がそのような代わりに、Gmailの見通しの受信トレイ(ここでは問題なし)のように私の仕様で提供されているコードを実装しようとしたときにチャネルがエラーをアウトと呼ばれる:Mirth ConnectでjavaMailライブラリからメールを読む

64DETAILS: 
    TypeError: Cannot find function getBodyPart in object <html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body dir="auto"><div>Hi!</div>...(here the email continues with div tags) 

だから私は明らかに電子メールデータを取得するが、getBodyPartは、それを破ります。私が理解したことは、彼のコードは特定の種類の電子メールのためのものであり、ここでは例では非MIME電子メールを受信したと思います。

これは私が尋ねているようです:すべてのメールをプレーンテキストに変換し、それをロガー/出力に出力して管理できるようにするにはどうすればよいですか?

「管理」とは、タイトルの付いたメールを別のチャンネルに広め、受信した受信トレイにそのメールを表示するという意味です。

私は私の質問で十分明確であり、質問をするルールに従うことを希望します。

+0

update:引用された質問で使用された元のコードは、Gmailの受信トレイにある最初のメールを読むことを実現するgmailで動作するようです。しかし、これは問題を解決しませんし、フォルダ内の最初の電子メールを何度も読み続けて、新しい一意のIDを与え続けます。 – Dubba

答えて

0

私はあなたの更新されたクエリに答えています。このプログラムは、あなたが読んだ後にこれを避けるために正しいと言われているように繰り返し電子メールを読むでしょう、あなたは別のフォルダに電子メールを移動し、特定の電子メール送信者または件名に基づいて、特定の電子メールのみを読み取り、その電子メールを希望のフォルダに移動することができます。

+0

これを別のフォルダ(gmail:label内)に追加するだけで、メールは受信トレイにも残ります。私はそれ以上のラベル管理が必要だと思う、または私は自動的に受信トレイをスキップし、受信メールをmirthがどこからメールを読んでから移動させるのかという作業者に移動するようにGmailを設定する。 – Dubba

+0

読み込みの問題は、java配列リストを使用して解決されました。 – Dubba

0

私はあなたがコードで言及した人でした。 GMAILからメールを取得しようとしたときにも同じ問題が発生しました。しかし、私はセキュリティアプリをオフにしました、私はここにGMAILのリンクを提供しました。私はこのような何かが見通しのために利用可能でなければならないと思う。しかし、私は見通しを読むために同じコードを試しましたが、何の変更もなしにうまくいきました。

GMAILセキュリティOFF については

https://myaccount.google.com/lesssecureapps

それはあなたが読んでいるメールの種類に依存します。私の場合は、HTMLのデータをメールの本文に入れていました。そのコードは一般化されたものではありませんでした。メール本体のHTMLデータを読み込むはずです。あなたのメールの仕組みは分かりませんか?しかし、mp.getBodyPart(0)またはmp.getBodyPart(1)は何らかの出力を提供する必要があります。ファイルにメールを添付しても、mp.getBodyPartは添付ファイルを読み込みます。

関連する問題