Jason, > I'm looking a for bean that can send mail to an smtp server that handles > authorization
To be honest I've never needed to do this, but I suspect that your best bet would be to use Java Mail, I've quickly run through relevant parts of James code and put together a method outlining the key steps involved, I make no representations as to its fitness for any purpose ;-) but I hope its a good clue. As with HTTP AUTH, SMTP AUTH is complicated by having to agree to use the strongest common auth encryption with the server, so most simple SMTP clients probably sidestep the issue altogether. Be warned that while James uses the default mail session with no authenticator, doing this will allow other apps in the same JVM to access your usernames and passwords. d. ---------------------------------------------------------------- package uk.co.killerbees.mailets; import java.util.Properties; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.PasswordAuthentication; import javax.mail.Session; import javax.mail.Transport; import javax.mail.URLName; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; /** * @author $author$ * @version $Revision$ */ public class JavaMailSendExample { /** * Example code. WYSIWYG * * @param args . */ public static void main(String[] args) { try { new JavaMailSendExample().send(); } catch (AddressException e) { //ignore for the sake of readability } catch (MessagingException e) { //ignore for the sake of readability } } public void send() throws AddressException,MessagingException { // first some basic information about our message String user = "danny"; String password = "passme"; String sender = "[EMAIL PROTECTED]"; String destinationHost = "127.0.0.1"; // next // set some system defaults, not really needed for this example // as we will be actively setting all the relevant properties // but safer to set something than nothing at all Properties mailProps = new Properties(); mailProps.put("mail.smtp.user",sender); mailProps.put("mail.smtp.from",sender); // technically this should refer to your default upstream SMTP relay mailProps.put("mail.host",destinationHost); // this is the URL of the machine we want to connect to to deliver our mail: URLName destinationURL = new URLName("smtp://"+destinationHost); // now lets get the javamail default instance Session session = Session.getDefaultInstance(mailProps); // tell the session what credentials to use for this host session.setPasswordAuthentication(destinationURL,new PasswordAuthentication(user,password)); // create a simple mail message MimeMessage message = new MimeMessage(session); message.setRecipients(Message.RecipientType.TO,"[EMAIL PROTECTED]"); message.setSender(new InternetAddress(sender)); message.setSubject("Oh la la, its an email"); message.setText("This is the body"); // get the transporter to our host, this will be responsible for calling // the PasswordAuthenticator we passed to the session to get the credentials // for this URL Transport trans = session.getTransport(destinationURL); // connect and send trans.connect(); trans.send(message); trans.close(); } } --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]