0

サードパーティのメールサーバー (smtp.gmail.com など) を使用せずに、添付ファイル付きの電子メールを送信しようとしています。

基本・準備

このスレッドでは、最初に MimeMessage を作成してから で送信するというアドバイスに従いましたmyMailQue.queMail(msg);

テストパッケージで問題なく動作します。端末に次の出力が表示されます。

Jul 31, 2015 2:28:00 PM Aspirin run
INFORMATION: QueManager.run(): QueManager started.
Jul 31, 2015 2:28:01 PM Aspirin run
INFORMATION: RemoteDelivery (RemoteDelivery-1).run(): Try to give back RemoteDelivery object into the pool.

そして数秒後にメールが到着。

問題

OSGi フレームワーク (felix) で使用しようとすると、メールが送信されません。上記の出力であっても、例外やその他の情報は出力されません。

バンドル版の aspirin-jar が見つからなかったので、自分で bnd に変換しました。このような:

java -jar bnd-2.1.0.jar wrap jar/aspirin-0.8.3.jar

私のテスト

変換された jar がバンドル フォルダーにあるので、ワイヤリング パッケージの問題はないので、動作するはずですか? 問題の例:

Unresolved constraint in bundle edu.hm.ee.hem.validation [5]: Unable to resolve 5.0: missing requirement [5.0] osgi.wiring.package; (osgi.wiring.package=org.masukomi.aspirin.core)

呼び出し元のコードは、アスピリンバンドルqueMail(msg)の他のメソッドを呼び出すことができます。たとえば、関数を前後に 1 回呼び出しています。結果は 0 と 1 です。これは理にかなっています (imo)。myMailQue.getQueueSize()queMail(msg)


このセットアップが機能しないことに本当に混乱しています。特に例外がなければ、何が問題なのか理解するのが難しいです

したがって、テスト パッケージとフレームワークの唯一の違いは、変換された jar だと思います。どうすれば問題を解決できるか考えている人はいますか?

事前にどうもありがとうございました


PSこれは私の最初の質問です(私はたくさん読んだことがあります;)重要な情報が欠けている場合、または質問の形式がわかりにくい場合は、ヒントを教えてください。

4

1 に答える 1