Groovy スクリプトを使用して SOAPUI のテスト ステップの結果を含む電子メールを送信しようとしています。最初に Groovy コンソールでコードを書きましたが、問題なく動作しました。SOAPUI (Groovy script test Step) にコピーして貼り付けたところ、エラーが表示されました。これが私のコードです:
Groovy スクリプトを使用して SOAPUI のテスト ステップの結果を含む電子メールを送信しようとしています。最初に Groovy コンソールでコードを書きましたが、問題なく動作しました。SOAPUI (Groovy script test Step) にコピーして貼り付けたところ、エラーが表示されました。これが私のコードです
import javax.mail.*
import javax.mail.internet.*
public class SMTPAuthenticator extends Authenticator
{
public PasswordAuthentication getPasswordAuthentication()
{
return new PasswordAuthentication('test@gmaail.com', '****');
}
}
def d_email = "test@gmail.com",
d_uname = "test",
d_password = "*****",
d_host = "smtp.gmail.com",
d_port = "465", //465,587
m_to = "test2@gamil.com",
m_subject = "Testing",
m_text = "Hi, this is the testing email."
def props = new Properties()
props.put("mail.smtp.user", d_email)
props.put("mail.smtp.host", d_host)
props.put("mail.smtp.port", d_port)
props.put("mail.smtp.starttls.enable","true")
props.put("mail.smtp.debug", "true");
props.put("mail.smtp.auth", "true")
props.put("mail.smtp.socketFactory.port", d_port)
props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory")
props.put("mail.smtp.socketFactory.fallback", "false")
def auth = new SMTPAuthenticator()
def session = Session.getInstance(props, auth)
session.setDebug(true);
def msg = new MimeMessage(session)
msg.setText(m_text)
msg.setSubject(m_subject)
msg.setFrom(new InternetAddress(d_email))
msg.addRecipient(Message.RecipientType.TO, new InternetAddress(m_to))
Transport transport = session.getTransport("smtps");
transport.connect(d_host, 465, d_uname, d_password);
transport.sendMessage(msg, msg.getAllRecipients());
transport.close();
問題は次の行にあります: transport.sendMessage(msg, msg.getAllRecipients());
この行を削除すると、エラーはありませんが、メッセージは送信されません..
これが Groovy コンソールでは完全に機能するのに、Soapui でエラーがスローされる理由を知っていますか?
事前に助けてくれてありがとう!