0

誰かが私に足りないものを見つけてくれることを願っています。Java アプリケーション内で単純な HTML メールを送信しようとしています。メール ライブラリとして commons-mail 1.1 (maven 経由) を使用しています。

私が使用しているコードは次のとおりです。

HtmlEmail email = new HtmlEmail();
email.setDebug(true);
email.setHostName("my.emailhost.com");
email.addTo("my_gmail_address@gmail.com");
email.setFrom("my_work_address@emailhost.com");
email.setSubject("Test Subject");
email.setHtmlMsg("<b>This is a bolded message</b>");
email.setTextMsg("This is a text message");
email.send();

メールを受信して​​いますが、このようにフォーマットされています。サブジェクトがないことにも注意してください。ただし、コードで明らかにサブジェクトを指定しました。

------=_Part_0_122395252.1304699110505
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

This is a text message
------=_Part_0_122395252.1304699110505
Content-Type: text/html; charset=us-ascii
Content-Transfer-Encoding: 7bit

<b>This is a bolded message</b>
------=_Part_0_122395252.1304699110505--

ここで何が間違っているのかわかりません。私はgmail経由で送信するように切り替えました-そしてそれは送信しました、それはまったく同じようにフォーマットしました. 生のメッセージを表示すると、

Delivered-To: xxxxxxx@gmail.com
Received: by 10.90.73.11 with SMTP id v11cs143993aga;
        Fri, 6 May 2011 09:25:11 -0700 (PDT)
Received: by 10.236.187.97 with SMTP id x61mr4380232yhm.476.1304699111088;
        Fri, 06 May 2011 09:25:11 -0700 (PDT)
Return-Path: <xxxxxxx@xxxxxxx.com>
Received: from xxxxxxx.xxxxxxx.com (xxxxxxx.xxxxxxx.com [x.x.x.x])
        by mx.google.com with ESMTP id 68si9400486yhl.82.2011.05.06.09.25.10;
        Fri, 06 May 2011 09:25:10 -0700 (PDT)
Received-SPF: pass (google.com: domain of xxxxxxx@xxxxxxx.com designates x.x.x.x as permitted sender) client-ip=x.x.x.x;
Authentication-Results: mx.google.com; spf=pass (google.com: domain of xxxxxxx@xxxxxxx.com designates x.x.x.x as permitted sender) smtp.mail=xxxxxxx@xxxxxxx.com
Received: from xxxxxxx-mac-pro.local ([x.x.x.x])
          by xxxxxxx.xxxxxxx.com (Lotus Domino Release 8.5.1FP3)
          with ESMTP id 2011050612251028-17357 ;
          Fri, 6 May 2011 12:25:10 -0400 
From: xxxxxxx@xxxxxxx.com
Date: Fri, 6 May 2011 12:25:10 -0400
Message-ID: <OF8BBF4CBD.70926756-ON85257888.005A31F5@xxxxxxx.com>

どんな考えでも大歓迎です。

乾杯

4

1 に答える 1

0

よくわかりません。自分で簡単にテストする方法がありません。

Commons-mail で見たすべての例では、メッセージが html としてフォーマットされていました - サイト(<html><body><p>Some text for testing</p></body></html>)

さらに、私はこれに気づきました:

email.setHtmlMsg("<b>This is a bolded message</b>"); // HTML TEXT
email.setTextMsg("This is a text message"); // NORMAL Text, with no HTML styles

多分これは問題です。

APIでの記述方法をテストしましたか? 彼らは StringBuffer を使用します:

 StringBuffer msg = new StringBuffer();
 msg.append("<html><body>");
 msg.append("<img src=cid:").append(he.embed(img)).append(">");
 msg.append("<img src=cid:").append(he.embed(png)).append(">");
 msg.append("</body></html>");
 HtmlEmail he = new HtmlEmail();
he.setHtmlMsg(msg.toString());

これまでコモンズメールで作業したことはありません...

この助けを願っています!よろしく、

于 2011-05-06T17:43:13.110 に答える