質問編集履歴
2
確認結果の追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -106,6 +106,52 @@
|
|
106
106
|
今後は、mailtrapを使用して、外部向けにテストメール送信をC#とJavaで実装してみて実行結果を見ます。
|
107
107
|
実行結果を見て、外部に問題無く届くのであれば、ローカルとWSL2の間の問題なので、この辺は私全く知識が足りていないので、本か何かご存じであれば、教えて頂ければ幸いです。
|
108
108
|
|
109
|
+
#### 目的(Java側から同一の環境(FackSMTP)へ向けてのメール送信テスト)
|
110
|
+
C#側ではメール送信できたので、ローカルのC#ではなくWSL側のJavaからメール送信テスト。
|
111
|
+
ここれ問題があるのであれば、ホストマシンとWSLの間がうまくいっていないという認識です。
|
112
|
+
(私の中では)
|
113
|
+
```java
|
114
|
+
// ローカルホスト名でpingが通っているし、ローカルホスト名(Windowsのマシン名)を指定してても大丈夫だと思っています。(ここが違ったら指摘願います)
|
115
|
+
private static String _hostName = "ローカルのホスト名(Windowsのipconfig /allで出てくるホスト名)";
|
116
|
+
private static int _port = 25;
|
117
|
+
private static String _user = "user.sample";
|
118
|
+
private static String _pass = "pass.ample";
|
119
|
+
private static String _fa = "user.sample@hogehoge.com";
|
120
|
+
private static String _ta = "to.user@hogehoge.com";
|
121
|
+
```
|
122
|
+
|
123
|
+
```java
|
124
|
+
private void sendSimpleMail() throws EmailException{
|
125
|
+
try
|
126
|
+
{
|
127
|
+
var email = new SimpleEmail();
|
128
|
+
email.setHostName(this._mti.getHostName());
|
129
|
+
email.setSmtpPort(this._mti.getSmtpPort());
|
130
|
+
email.setAuthentication(this._mti.getSmtpUser(), this._mti.getSmtpPass());
|
131
|
+
email.setSSLOnConnect(false);
|
132
|
+
email.setFrom(this._mti.getFromAddress());
|
133
|
+
email.setSubject(this._mti.getSubject());
|
134
|
+
email.setMsg(this._mti.getMainMessage());
|
135
|
+
email.addTo(this._mti.getToAddressList());
|
136
|
+
if(!StringUtils.isEmpty(this._mti.getCcAddress()))
|
137
|
+
email.addCc(this._mti.getCcAddress());
|
138
|
+
if(!StringUtils.isEmpty(this._mti.getBccAddress()))
|
139
|
+
email.addBcc(this._mti.getBccAddress());
|
140
|
+
email.send();
|
141
|
+
}
|
142
|
+
catch(EmailException e){
|
143
|
+
throw e;
|
144
|
+
}
|
145
|
+
}
|
146
|
+
```
|
147
|
+
結果
|
148
|
+
```
|
149
|
+
org.apache.commons.mail.EmailException: Sending the email to the following server failed : [host_name]:25
|
150
|
+
```
|
151
|
+
|
152
|
+
結果エラーとなりました。
|
153
|
+
mailtrap側への送信はまだ未テストなのでこの後で追加します。
|
154
|
+
|
109
155
|
ご回答者の皆様。
|
110
156
|
ご回答いただきありがとうございます。
|
111
157
|
引き続きよろしくお願いいたします。
|
1
検証事項の追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -38,3 +38,77 @@
|
|
38
38
|
わかる方ご教授をお願い致します。
|
39
39
|
|
40
40
|
|
41
|
+
### 現状の追記
|
42
|
+
現状ローカルマシンでsmtp4devを疑い、FackSMTPを使用してC#でローカルでメール送信プログラムを組んでみたところ、送信が行えました。
|
43
|
+
#### 目的(smtp4devの動作確認として同様のメール送信をFackSMTPを使用して行う)
|
44
|
+
##### 環境
|
45
|
+
C#.net (Coreじゃない方)
|
46
|
+
```C#
|
47
|
+
using System;
|
48
|
+
using System.Collections.Generic;
|
49
|
+
using System.Linq;
|
50
|
+
using System.Text;
|
51
|
+
using System.Threading.Tasks;
|
52
|
+
|
53
|
+
namespace ConsoleMailSample
|
54
|
+
{
|
55
|
+
internal class Program
|
56
|
+
{
|
57
|
+
static void Main(string[] args)
|
58
|
+
{
|
59
|
+
var host = "ローカルのホスト名(Windowsのipconfig /allで出てくるホスト名)";
|
60
|
+
var port = 25;
|
61
|
+
var userName = "sample.user";
|
62
|
+
var password = "sample.pass";
|
63
|
+
var fromAddress = "sample.user@hogehoge.com";
|
64
|
+
var toAddress = "to.user@higehige.com";
|
65
|
+
|
66
|
+
var msg = new MimeKit.MimeMessage();
|
67
|
+
msg.From.Add(new MimeKit.MailboxAddress(userName, fromAddress));
|
68
|
+
msg.To.Add(new MimeKit.MailboxAddress("to.user", toAddress));
|
69
|
+
|
70
|
+
msg.Subject = "testmail" + DateTime.Now.ToString();
|
71
|
+
|
72
|
+
var mainMessage = new MimeKit.TextPart("Plain");
|
73
|
+
mainMessage.Text = "test mail";
|
74
|
+
msg.Body = mainMessage;
|
75
|
+
|
76
|
+
using (var sc = new MailKit.Net.Smtp.SmtpClient())
|
77
|
+
{
|
78
|
+
try
|
79
|
+
{
|
80
|
+
Console.WriteLine("送信開始");
|
81
|
+
sc.Connect(host, port, MailKit.Security.SecureSocketOptions.Auto);
|
82
|
+
sc.Authenticate(userName, password);
|
83
|
+
sc.Send(msg);
|
84
|
+
sc.Disconnect(true);
|
85
|
+
|
86
|
+
}
|
87
|
+
catch (Exception ex)
|
88
|
+
{
|
89
|
+
Console.WriteLine(ex);
|
90
|
+
}
|
91
|
+
finally
|
92
|
+
{
|
93
|
+
Console.WriteLine("送信終了");
|
94
|
+
}
|
95
|
+
}
|
96
|
+
|
97
|
+
Console.ReadLine(); // 待機
|
98
|
+
|
99
|
+
}
|
100
|
+
}
|
101
|
+
}
|
102
|
+
|
103
|
+
```
|
104
|
+
C#側では、FackSMTPでは動いてsmtp4devでは動作しなかったので、toge_さんのメッセージついては読んで、確認をしてみます。
|
105
|
+
|
106
|
+
今後は、mailtrapを使用して、外部向けにテストメール送信をC#とJavaで実装してみて実行結果を見ます。
|
107
|
+
実行結果を見て、外部に問題無く届くのであれば、ローカルとWSL2の間の問題なので、この辺は私全く知識が足りていないので、本か何かご存じであれば、教えて頂ければ幸いです。
|
108
|
+
|
109
|
+
ご回答者の皆様。
|
110
|
+
ご回答いただきありがとうございます。
|
111
|
+
引き続きよろしくお願いいたします。
|
112
|
+
|
113
|
+
|
114
|
+
|