- PR -

JavaMailでのメール送信(追加)

投稿者投稿内容
ひろ
会議室デビュー日: 2005/03/08
投稿数: 13
お住まい・勤務地: 京都
投稿日時: 2005-03-28 20:17
現在グループウェアーを作成しています。
メール機能が必要でJavaでの「メール送信」を勉強しているのですが、サンプル自体も動きません。

環境説明****************************************************************
 ・windows XP Professional
 ・j2sdk1.4.2_06
 ・Tomcat 4.1
 ・jaf-1.0.2
   C:\Tomcat 4.1\common\libに上書き保存し、CLASSPASSに追加
 ・javamail-1.3
   C:\Tomcat 4.1\common\libに上書き保存し、CLASSPASSに追加
************************************************************************
Eclipse2.1で開発しています。
色々なHPを見ても解決できませんでした。

サンプルソース**********************************************************
import java.io.*;
import java.util.Properties;
import java.util.Date;
import java.net.InetAddress;
import javax.mail.*;
import javax.mail.internet.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Sample192 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
//送信内容の入力
response.setContentType("text/html;charset=Shift_JIS");
PrintWriter out=response.getWriter();
out.println("<html><head><title>Sample192</title></head><body>");
out.println("<h2>メール送信</h2>");
out.println("<form method=\"post\" action=\"Sample192\">");
out.println("あて先:<br>");
out.println("<input type=\"text\" name=\"to\" size=\"30\"><br>");
out.println("題名:<br>");
out.println("<input type=\"text\" name=\"subject\" size=\"30\"><br>");
out.println("メール本文:<br>");
out.println("<textarea name=\"honbun\" rows=\"5\" cols=\"30\"></TEXTAREA><br>");
out.println("<input type=\"submit\" value=\"送信\">");
out.println("<input type=\"reset\" value=\"キャンセル\">");
out.println("</form>");
out.println("</body></html>");
out.close();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html;charset=Shift_JIS");
PrintWriter out=response.getWriter();
out.println("<html><head><title>Sample192</title></head><body>");
try
{
request.setCharacterEncoding("JISAutoDetect");
String to=request.getParameter("to");//あて先
String subject=request.getParameter("subject");//題名
String sendMsg=request.getParameter("honbun");//本文
//アドレスなどの設定
String from="*********";//送信元
String personal="サーブレットからのメール";//送信元(受信側メーラーで表示される文字)
String cc=null;//CCあて先
String bcc=null;//BCCあて先
String smtphost="*********";//SMTPサーバー
String mailer="My Java mailer";//メーラー名(何でもお好きに)
String protocol="smtp";//メールプロトコル
//SMTPホストの設定
Properties props = System.getProperties();
props.put("mail.smtp.host", smtphost);
//Sessionオブジェクトの取得
Session s = Session.getDefaultInstance(props, null);
//あて先TO、CC、BCCの設定
MimeMessage msg = new MimeMessage(s);
msg.setFrom(new InternetAddress(from,personal));
msg.addRecipient(Message.RecipientType.TO,new InternetAddress(to));
if (cc != null) msg.addRecipient(Message.RecipientType.CC,new InternetAddress(cc));
if (bcc != null) msg.addRecipient(Message.RecipientType.BCC,new InternetAddress(bcc));
//その他の設定
msg.setSubject(subject);//SUBJECTの設定
msg.setHeader("X-Mailer", mailer);//メーラーの設定
msg.setSentDate(new Date());//日付の設定
msg.setText(sendMsg);//本文の設定
//送信
Transport.send(msg);
out.println("送信しました。");
}catch(Exception e)
{
out.println(e.getMessage());
}
out.println("</body></html>");
}
}
************************************************************************

あまりにも分からないので質問させて頂きました。
よろしくお願いします。

**********追加**********
コンパイルが出来ない状態です。
よろしくお願いします。

[ メッセージ編集済み 編集者: ひろ 編集日時 2005-03-28 20:34 ]
aa
ぬし
会議室デビュー日: 2004/01/08
投稿数: 299
投稿日時: 2005-03-28 20:34
何がどう動かないのでしょうか?
エラーでも出るんですか?
必要なjarファイルが無いとかじゃありませんか?

あと、ホントに次のコードのまんまじゃありませんよね?
String smtphost="*********";//SMTPサーバー
ひろ
会議室デビュー日: 2005/03/08
投稿数: 13
お住まい・勤務地: 京都
投稿日時: 2005-03-28 20:38
*********
を使用しているところは設定しています。
自作サーバーでの公開ですので
「*******」
にしています。

[ メッセージ編集済み 編集者: ひろ 編集日時 2005-03-28 20:38 ]
K
大ベテラン
会議室デビュー日: 2004/04/07
投稿数: 174
投稿日時: 2005-03-28 20:53
なぜコンパイルエラーの内容を書かないのですか?

#最近本当に質問に答えて欲しいのか疑問に思うような書き込みが多いですね。。
taro
ぬし
会議室デビュー日: 2003/10/20
投稿数: 316
投稿日時: 2005-03-28 21:00
私の環境ではそのままコピーしてコンパイル通りましたよ。
ひろ
会議室デビュー日: 2005/03/08
投稿数: 13
お住まい・勤務地: 京都
投稿日時: 2005-03-28 21:07
申し訳ございません。

Eclipseを利用し始めてから
javacのコマンドを使用できなくなりました。

エラー内容を書き込みます。
*******************************************************************
インポート java.net.InetAddress は決して使用されません。
Sample192.java gw/WEB-INF/src 行 4
インポート javax.mail が解決できません。
Sample192.java gw/WEB-INF/src 行 5
インポート javax.mail が解決できません。
Sample192.java gw/WEB-INF/src 行 6
Session は解決できないか、型ではありません。
Sample192.java gw/WEB-INF/src 行 56
Session は解決できません。
Sample192.java gw/WEB-INF/src 行 56
MimeMessage は解決できないか、型ではありません。
Sample192.java gw/WEB-INF/src 行 58
MimeMessage は解決できないか、型ではありません。
Sample192.java gw/WEB-INF/src 行 58
InternetAddress は解決できないか、型ではありません。
Sample192.java gw/WEB-INF/src 行 59
Message は解決できません。 Sample192.java
gw/WEB-INF/src 行 60
InternetAddress は解決できないか、型ではありません。
Sample192.java gw/WEB-INF/src 行 60
Message は解決できません。
Sample192.java gw/WEB-INF/src 行 61
InternetAddress は解決できないか、型ではありません。
Sample192.java gw/WEB-INF/src 行 61
Message は解決できません。
Sample192.java gw/WEB-INF/src 行 62
InternetAddress は解決できないか、型ではありません。
Sample192.java gw/WEB-INF/src 行 62
Transport は解決できません。
Sample192.java gw/WEB-INF/src 行 69
*******************************************************************
mogeさんへ
真剣に質問に答えて欲しいと思っています。
不十分な書き込み申し訳ございません。
今後気をつけます。
ひろ
会議室デビュー日: 2005/03/08
投稿数: 13
お住まい・勤務地: 京都
投稿日時: 2005-03-28 21:09
taroさんへ
本当ですか?

それでは環境設定が間違っているって事ですね。

JavaMailやJAFの設定意外に何か設定しなければいけないのでしょうか?

本当に初心者で申し訳ございません。
syo
常連さん
会議室デビュー日: 2003/08/17
投稿数: 43
投稿日時: 2005-03-28 21:27
お世話になっております。

単純にEclipseのプロジェクトにおいてjavamail.jarなどがビルドパスに含まれていないだけなのではないでしょうか?

スキルアップ/キャリアアップ(JOB@IT)