You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Richard <ri...@gmail.com> on 2004/10/13 10:17:37 UTC

how to send an email

hi guys


I have a form submitted to an action class and i need the information
on the form to be emailed
to some email address.  how can i do this ? can it be done inside the
same action?

please help
thanks
richard

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: how to send an email

Posted by Richard <ri...@gmail.com>.
thanks i think you're  correct with that assesment.

On Wed, 13 Oct 2004 17:52:46 +0900, Shinobu Kawai
<sh...@gmail.com> wrote:
> 
> Hi richard,
> 
> > I have a form submitted to an action class and i need the information
> > on the form to be emailed
> > to some email address.  how can i do this ? can it be done inside the
> > same action?
> Check this out:
>     http://jakarta.apache.org/commons/sandbox/email/
> Makes life a lot easier.  ;)
> 
> Best regards,
> -- Shinobu Kawai
> 
> --
> Shinobu Kawai <sh...@gmail.com>
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: how to send an email

Posted by Shinobu Kawai <sh...@gmail.com>.
Hi richard,

> I have a form submitted to an action class and i need the information
> on the form to be emailed
> to some email address.  how can i do this ? can it be done inside the
> same action?
Check this out:
    http://jakarta.apache.org/commons/sandbox/email/
Makes life a lot easier.  ;)

Best regards,
-- Shinobu Kawai

--
Shinobu Kawai <sh...@gmail.com>


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: how to send an email

Posted by Richard <ri...@gmail.com>.
thanks i guess ill just modify and reuse this.


On Wed, 13 Oct 2004 09:43:39 +0100, Duncan Mills
<du...@oracle.com> wrote:
> Its pretty simple to plug in the JavaMail API - here's a Utility class I
> call from an Action I use when resetting a User Password: It's quick and
> dirty but provides an example.  The SMTP mail host is read from a
> properties file in this case, but equally could be passed in from the
> Appliciation scope. Note the total lack of  any kind of useful error
> handling in this example - I think I better re-write it :-)
> 
> [--Badly formmated code begin--]
> package com.groundside.util;
> import java.io.IOException;
> import java.io.InputStream;
> import java.util.Properties;
> import javax.mail.Message;
> import javax.mail.MessagingException;
> import javax.mail.Session;
> import javax.mail.Transport;
> import javax.mail.internet.InternetAddress;
> import javax.mail.internet.MimeMessage;
> 
> public class Emailer
> {
>   String toAddress;
>   String fromAddress;
>   String msgText;
>   String smtpServer;
>   String msgSubject;
> 
>   public Emailer()
>   {
>   }
> 
>   public Emailer(String from, String to, String subject, String message)
>   {
>     setFromAddress(from);
>     setToAddress(to);
>     setMsgSubject(subject);
>     setMsgText(message);
>   }
> 
>   public void sendMail()
>   {
>     Session session = null;
>     MimeMessage msg = null;
>     Properties props = new Properties();
> 
>     if (this.getSmtpServer() == null)
>     {
>       ClassLoader propLoader = this.getClass().getClassLoader();
>       //Properties file just lives in the src root
>       InputStream is = propLoader.getResourceAsStream("mailer.properties");
>       try
>       {
>         props.load(is);
>         setSmtpServer((String)props.get("mail.smtp.host"));
>       }
>       catch (IOException iox)
>       {
>         System.out.println("Mail Properties load failed " + iox.toString());
>       }
> 
>     }
>     else
>     {
>       props.put("mail.smtp.host",this.getSmtpServer());
>     }
> 
>     session = Session.getDefaultInstance(props);
>     try
>     {
>       msg = new MimeMessage(session);
> 
>       msg.setFrom(new InternetAddress(this.getFromAddress()));
>       msg.addRecipient(Message.RecipientType.TO,new
> InternetAddress(this.getToAddress()));
>       msg.setSubject(getMsgSubject());
>       msg.setText(getMsgText());
> 
>       Transport.send(msg);
>     }
>     catch (MessagingException mex)
>     {
>       mex.printStackTrace();
>     }
> 
>   }
> 
>   // Getters and Setters
>   public String getToAddress()
>   {
>     return toAddress;
>   }
> 
>   public void setToAddress(String toAddress)
>   {
>     this.toAddress = toAddress;
>   }
> 
>   public String getFromAddress()
>   {
>     return fromAddress;
>   }
> 
>   public void setFromAddress(String fromAddress)
>   {
>     this.fromAddress = fromAddress;
>   }
> 
>   public String getMsgText()
>   {
>     return msgText;
>   }
> 
>   public void setMsgText(String msgText)
>   {
>     this.msgText = msgText;
>   }
> 
>   public String getSmtpServer()
>   {
>     return smtpServer;
>   }
> 
>   public void setSmtpServer(String smtpServer)
>   {
>     this.smtpServer = smtpServer;
>   }
> 
>   public String getMsgSubject()
>   {
>     return msgSubject;
>   }
> 
>   public void setMsgSubject(String msgSubject)
>   {
>     this.msgSubject = msgSubject;
>   }
> }
> 
> [--Badly formmated code end--]
> 
> Regards
> 
> Duncan Mills
> 
> 
> Richard wrote:
> 
> >hi guys
> >
> >
> >I have a form submitted to an action class and i need the information
> >on the form to be emailed
> >to some email address.  how can i do this ? can it be done inside the
> >same action?
> >
> >please help
> >thanks
> >richard
> >
> >---------------------------------------------------------------------
> >To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> >For additional commands, e-mail: user-help@struts.apache.org
> >
> >
> >
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: how to send batch emails

Posted by Jay Chandran <ja...@iqss.co.in>.
Hai ,

Please check the below code which helps u to send batch mails ..

import javax.mail.Folder;
import javax.mail.Store;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import java.util.Properties;
import java.sql.Connection;
import javax.sql.DataSource;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.SQLException;
import java.util.Date;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.lang.String;
import java.text.SimpleDateFormat;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionServlet;
import org.apache.struts.action.DynaActionForm;
import java.util.ArrayList;




    public final class PricingInfoAction extends Action
     {

           private static final String SMTP_HOST_NAME = "";

           public String emailMsgTxt = null;
           private static final String emailSubjectTxt  = "Ad Order
Details";
           private static final String emailFromAddress = "";
    public ActionForward perform(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
     {

       // Add List of Email address to who email needs to be sent to
                String[] emailList = new String[2];
                emailList[0]= new String("k_devan_2000@yahoo.com");
                emailList[1]= new String("jaychandran24@ayahoo.com");

                                emailMsgTxt="Ad Order Details";

                             try {
                                    postMail( emailList, emailSubjectTxt,
emailMsgTxt, emailFromAddress);
                                  }catch (Exception e)
                                 {
                                  return
(mapping.findForward("mailfailure"));
                                 }


                        }catch (Exception e) {
                            return (mapping.findForward("submitadfail"));
                         }

     return (mapping.findForward(target));

          }

      public void postMail( String recipients[ ], String subject,
                            String message , String from) throws
MessagingException
                  {

                    boolean debug = false;

                    //Set the host smtp address
                    Properties props = new Properties();
                    props.put("mail.smtp.host", SMTP_HOST_NAME);
                    Session session = Session.getDefaultInstance(props,
null);

                    session.setDebug(debug);

                     // set the from and to address
                   InternetAddress addressFrom = new InternetAddress(from);
                   msg.setFrom(addressFrom);

                   InternetAddress[] addressTo = new
InternetAddress[recipients.length];
                   for (int i = 0; i < recipients.length; i++)
                   {
                     addressTo[i] = new InternetAddress(recipients[i]);
                   }
                   msg.setRecipients(Message.RecipientType.TO, addressTo);


                   // Setting the Subject and Content Type
                   msg.setSubject(subject);
                   msg.setContent(message, "text/plain");
                   Transport.send(msg);
                }

       }
----- Original Message -----
From: "Caroline Jen" <ji...@yahoo.com>
To: "Struts Users Mailing List" <us...@struts.apache.org>
Sent: Wednesday, October 13, 2004 7:41 PM
Subject: Re: how to send batch emails


> I have been using the same utility class (JavaMail
> API) to send e-mails.  The code works OKay.
>
> Now, instead of the
>
> String toAddress
>
> I have String[] toAddress =
> selectRecipientsForm.getSelectedEmailAddresses();
>
> will the same code works for sending batch e-mails?
>
>
>
> --- Duncan Mills <du...@oracle.com> wrote:
>
> > Its pretty simple to plug in the JavaMail API -
> > here's a Utility class I
> > call from an Action I use when resetting a User
> > Password: It's quick and
> > dirty but provides an example.  The SMTP mail host
> > is read from a
> > properties file in this case, but equally could be
> > passed in from the
> > Appliciation scope. Note the total lack of  any kind
> > of useful error
> > handling in this example - I think I better re-write
> > it :-)
> >
> > [--Badly formmated code begin--]
> > package com.groundside.util;
> > import java.io.IOException;
> > import java.io.InputStream;
> > import java.util.Properties;
> > import javax.mail.Message;
> > import javax.mail.MessagingException;
> > import javax.mail.Session;
> > import javax.mail.Transport;
> > import javax.mail.internet.InternetAddress;
> > import javax.mail.internet.MimeMessage;
> >
> > public class Emailer
> > {
> >   String toAddress;
> >   String fromAddress;
> >   String msgText;
> >   String smtpServer;
> >   String msgSubject;
> >
> >   public Emailer()
> >   {
> >   }
> >
> >   public Emailer(String from, String to, String
> > subject, String message)
> >   {
> >     setFromAddress(from);
> >     setToAddress(to);
> >     setMsgSubject(subject);
> >     setMsgText(message);
> >   }
> >
> >   public void sendMail()
> >   {
> >     Session session = null;
> >     MimeMessage msg = null;
> >     Properties props = new Properties();
> >
> >     if (this.getSmtpServer() == null)
> >     {
> >       ClassLoader propLoader =
> > this.getClass().getClassLoader();
> >       //Properties file just lives in the src root
> >       InputStream is =
> > propLoader.getResourceAsStream("mailer.properties");
> >       try
> >       {
> >         props.load(is);
> >
> > setSmtpServer((String)props.get("mail.smtp.host"));
> >       }
> >       catch (IOException iox)
> >       {
> >         System.out.println("Mail Properties load
> > failed " + iox.toString());
> >       }
> >
> >     }
> >     else
> >     {
> >
> > props.put("mail.smtp.host",this.getSmtpServer());
> >     }
> >
> >     session = Session.getDefaultInstance(props);
> >     try
> >     {
> >       msg = new MimeMessage(session);
> >
> >       msg.setFrom(new
> > InternetAddress(this.getFromAddress()));
> >       msg.addRecipient(Message.RecipientType.TO,new
> > InternetAddress(this.getToAddress()));
> >       msg.setSubject(getMsgSubject());
> >       msg.setText(getMsgText());
> >
> >       Transport.send(msg);
> >     }
> >     catch (MessagingException mex)
> >     {
> >       mex.printStackTrace();
> >     }
> >
> >
> >   }
> >
> >   // Getters and Setters
> >   public String getToAddress()
> >   {
> >     return toAddress;
> >   }
> >
> >   public void setToAddress(String toAddress)
> >   {
> >     this.toAddress = toAddress;
> >   }
> >
> >   public String getFromAddress()
> >   {
> >     return fromAddress;
> >   }
> >
> >   public void setFromAddress(String fromAddress)
> >   {
> >     this.fromAddress = fromAddress;
> >   }
> >
> >   public String getMsgText()
> >   {
> >     return msgText;
> >   }
> >
> >   public void setMsgText(String msgText)
> >   {
> >     this.msgText = msgText;
> >   }
> >
> >   public String getSmtpServer()
> >   {
> >     return smtpServer;
> >   }
> >
> >   public void setSmtpServer(String smtpServer)
> >   {
> >     this.smtpServer = smtpServer;
> >   }
> >
> >   public String getMsgSubject()
> >   {
> >     return msgSubject;
> >   }
> >
> >   public void setMsgSubject(String msgSubject)
> >   {
> >     this.msgSubject = msgSubject;
> >   }
> > }
> >
> > [--Badly formmated code end--]
> >
> >
> > Regards
> >
> > Duncan Mills
> >
> >
> >
> > Richard wrote:
> >
> > >hi guys
> > >
> > >
> > >I have a form submitted to an action class and i
> > need the information
> > >on the form to be emailed
> > >to some email address.  how can i do this ? can it
> > be done inside the
> > >same action?
> > >
> > >please help
> > >thanks
> > >richard
> > >
> >
> >---------------------------------------------------------------------
> > >To unsubscribe, e-mail:
> > user-unsubscribe@struts.apache.org
> > >For additional commands, e-mail:
> > user-help@struts.apache.org
> > >
> > >
> > >
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> > user-unsubscribe@struts.apache.org
> > For additional commands, e-mail:
> > user-help@struts.apache.org
> >
> >
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: how to send batch emails

Posted by Caroline Jen <ji...@yahoo.com>.
I have been using the same utility class (JavaMail
API) to send e-mails.  The code works OKay.

Now, instead of the 

String toAddress

I have String[] toAddress =
selectRecipientsForm.getSelectedEmailAddresses();

will the same code works for sending batch e-mails?



--- Duncan Mills <du...@oracle.com> wrote:

> Its pretty simple to plug in the JavaMail API -
> here's a Utility class I 
> call from an Action I use when resetting a User
> Password: It's quick and 
> dirty but provides an example.  The SMTP mail host
> is read from a 
> properties file in this case, but equally could be
> passed in from the 
> Appliciation scope. Note the total lack of  any kind
> of useful error 
> handling in this example - I think I better re-write
> it :-)
> 
> [--Badly formmated code begin--]
> package com.groundside.util;
> import java.io.IOException;
> import java.io.InputStream;
> import java.util.Properties;
> import javax.mail.Message;
> import javax.mail.MessagingException;
> import javax.mail.Session;
> import javax.mail.Transport;
> import javax.mail.internet.InternetAddress;
> import javax.mail.internet.MimeMessage;
> 
> public class Emailer
> {
>   String toAddress;
>   String fromAddress;
>   String msgText;
>   String smtpServer;
>   String msgSubject;
> 
>   public Emailer()
>   {
>   }
> 
>   public Emailer(String from, String to, String
> subject, String message)
>   {
>     setFromAddress(from);
>     setToAddress(to);
>     setMsgSubject(subject);
>     setMsgText(message);
>   }
>  
>   public void sendMail()
>   {
>     Session session = null;
>     MimeMessage msg = null;
>     Properties props = new Properties();
>    
>     if (this.getSmtpServer() == null)
>     {
>       ClassLoader propLoader =
> this.getClass().getClassLoader();
>       //Properties file just lives in the src root
>       InputStream is =
> propLoader.getResourceAsStream("mailer.properties");
>       try
>       {
>         props.load(is);   
>        
> setSmtpServer((String)props.get("mail.smtp.host"));
>       }
>       catch (IOException iox)
>       {
>         System.out.println("Mail Properties load
> failed " + iox.toString());
>       }
>      
>     }
>     else
>     {
>      
> props.put("mail.smtp.host",this.getSmtpServer());
>     }
> 
>     session = Session.getDefaultInstance(props);
>     try
>     {
>       msg = new MimeMessage(session);
>      
>       msg.setFrom(new
> InternetAddress(this.getFromAddress()));
>       msg.addRecipient(Message.RecipientType.TO,new 
> InternetAddress(this.getToAddress()));
>       msg.setSubject(getMsgSubject());
>       msg.setText(getMsgText());
>      
>       Transport.send(msg);
>     }
>     catch (MessagingException mex)
>     {
>       mex.printStackTrace();
>     }
>    
>    
>   }
> 
>   // Getters and Setters
>   public String getToAddress()
>   {
>     return toAddress;
>   }
> 
>   public void setToAddress(String toAddress)
>   {
>     this.toAddress = toAddress;
>   }
> 
>   public String getFromAddress()
>   {
>     return fromAddress;
>   }
> 
>   public void setFromAddress(String fromAddress)
>   {
>     this.fromAddress = fromAddress;
>   }
> 
>   public String getMsgText()
>   {
>     return msgText;
>   }
> 
>   public void setMsgText(String msgText)
>   {
>     this.msgText = msgText;
>   }
> 
>   public String getSmtpServer()
>   {
>     return smtpServer;
>   }
> 
>   public void setSmtpServer(String smtpServer)
>   {
>     this.smtpServer = smtpServer;
>   }
> 
>   public String getMsgSubject()
>   {
>     return msgSubject;
>   }
> 
>   public void setMsgSubject(String msgSubject)
>   {
>     this.msgSubject = msgSubject;
>   }
> }
> 
> [--Badly formmated code end--]
> 
> 
> Regards
> 
> Duncan Mills
> 
> 
> 
> Richard wrote:
> 
> >hi guys
> >
> >
> >I have a form submitted to an action class and i
> need the information
> >on the form to be emailed
> >to some email address.  how can i do this ? can it
> be done inside the
> >same action?
> >
> >please help
> >thanks
> >richard
> >
>
>---------------------------------------------------------------------
> >To unsubscribe, e-mail:
> user-unsubscribe@struts.apache.org
> >For additional commands, e-mail:
> user-help@struts.apache.org
> >
> >  
> >
> 
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> user-unsubscribe@struts.apache.org
> For additional commands, e-mail:
> user-help@struts.apache.org
> 
> 


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Re: how to send an email

Posted by Duncan Mills <du...@oracle.com>.
Its pretty simple to plug in the JavaMail API - here's a Utility class I 
call from an Action I use when resetting a User Password: It's quick and 
dirty but provides an example.  The SMTP mail host is read from a 
properties file in this case, but equally could be passed in from the 
Appliciation scope. Note the total lack of  any kind of useful error 
handling in this example - I think I better re-write it :-)

[--Badly formmated code begin--]
package com.groundside.util;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class Emailer
{
  String toAddress;
  String fromAddress;
  String msgText;
  String smtpServer;
  String msgSubject;

  public Emailer()
  {
  }

  public Emailer(String from, String to, String subject, String message)
  {
    setFromAddress(from);
    setToAddress(to);
    setMsgSubject(subject);
    setMsgText(message);
  }
 
  public void sendMail()
  {
    Session session = null;
    MimeMessage msg = null;
    Properties props = new Properties();
   
    if (this.getSmtpServer() == null)
    {
      ClassLoader propLoader = this.getClass().getClassLoader();
      //Properties file just lives in the src root
      InputStream is = propLoader.getResourceAsStream("mailer.properties");
      try
      {
        props.load(is);   
        setSmtpServer((String)props.get("mail.smtp.host"));
      }
      catch (IOException iox)
      {
        System.out.println("Mail Properties load failed " + iox.toString());
      }
     
    }
    else
    {
      props.put("mail.smtp.host",this.getSmtpServer());
    }

    session = Session.getDefaultInstance(props);
    try
    {
      msg = new MimeMessage(session);
     
      msg.setFrom(new InternetAddress(this.getFromAddress()));
      msg.addRecipient(Message.RecipientType.TO,new 
InternetAddress(this.getToAddress()));
      msg.setSubject(getMsgSubject());
      msg.setText(getMsgText());
     
      Transport.send(msg);
    }
    catch (MessagingException mex)
    {
      mex.printStackTrace();
    }
   
   
  }

  // Getters and Setters
  public String getToAddress()
  {
    return toAddress;
  }

  public void setToAddress(String toAddress)
  {
    this.toAddress = toAddress;
  }

  public String getFromAddress()
  {
    return fromAddress;
  }

  public void setFromAddress(String fromAddress)
  {
    this.fromAddress = fromAddress;
  }

  public String getMsgText()
  {
    return msgText;
  }

  public void setMsgText(String msgText)
  {
    this.msgText = msgText;
  }

  public String getSmtpServer()
  {
    return smtpServer;
  }

  public void setSmtpServer(String smtpServer)
  {
    this.smtpServer = smtpServer;
  }

  public String getMsgSubject()
  {
    return msgSubject;
  }

  public void setMsgSubject(String msgSubject)
  {
    this.msgSubject = msgSubject;
  }
}

[--Badly formmated code end--]


Regards

Duncan Mills



Richard wrote:

>hi guys
>
>
>I have a form submitted to an action class and i need the information
>on the form to be emailed
>to some email address.  how can i do this ? can it be done inside the
>same action?
>
>please help
>thanks
>richard
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
>For additional commands, e-mail: user-help@struts.apache.org
>
>  
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org