SmtpClient c = new SmtpClient( server ); c.from( sender ); c.to( recipient ); PrintStream p = c .startMessage(); p.println( "" ); p.println( "Subject: Test of SMTP Server" ); p.println( "" ); p.println( "Hi" ); c.closeServer();SMTP is so simple you could roll your own code to send mail with it using a URLConnection. Here is David Flanagan’s source code to do it that way. Here is the Java Boutique code for SMTP.
SMTP is a kludgy anachronism. It lives on simply because everyone uses it. One of its major failings is a lack of authentication protocol. It has no official logon mechanism to prevent spammers from using your mail server to dispense SPAM.
Mail servers use various ad hoc schemes to protect themselves from unauthorised use:
RFC 821 describes the SMTP send mail protocol. You would use this to implement SendMail at the socket level with HELO commands and numbered responses.
If you talk to a mailserver, you can send mail to anyone in that domain without identifying yourself, however, if you want the mailserver to relay mail for you outside its domain, you need some way of identifying yourself. Mailservers drop off relayed mail using that same SMTP protocol.
![]() |
and suggestions to improve this page to Roedy Green : | ||
| Canadian Mind Products | |||
| mindprod.com IP:[65.110.21.43] | |||
| Your face IP:[38.103.63.18] | The information on this page is for non-military use only. | ||
| You are visitor number 19,970. | Military use includes use by defence contractors. | ||
| You can get a fresh copy of this page from: | or possibly from your local J: drive (Java virtual drive/Mindprod website mirror) | ||
| http://mindprod.com/jgloss/smtp.html | J:\mindprod\jgloss\smtp.html | ||