user3264841
user3264841

Reputation: 183

how to send email from web Application?

I have this Leave Apply page:

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<%@taglib uri="http://www.springframework.org/tags" prefix="spring"%>
<html> 
<head>  
<title> Application </title>       
  <link rel="stylesheet" href="CSS/Master.css">
   </head>
   <body>                   <!-- ----- <center> --->
    <h2> Application Form  </h2>            <!-- -- --</center> ------>
<table>
 <form:form method="POST" action="leaveapplyform.do" commandName="leaveapplyform" modelAttribute="leaveapplyform">    
 <tr>  <td ><spring:message code="label.LeaveType"/> </td>          
    <td>    <form:select path="LeaveType" name="LeaveType" id="choice" onchange="ShowReg(this.selectedIndex)">    
<form:option value="Five Live Carry Forward"></form:option>
<form:option value="Live Carry Forward"></form:option>
<form:option value="Hello"></form:option></form:select> </td>   </tr><br>    
 <tr>  <td > <spring:message code="label.leavePeriod"/></td>

    <td>    <form:select path="leavePeriod" name="leavePeriod" id="choice" onchange="ShowReg(this.selectedIndex)">
            <form:option value="fullDayPackage" >Full Day </form:option>
        <form:option value="halfDayPackage">Half Day</form:option>
    </form:select>
    <br />       
<div id="fullDay" style="display:none"><span class="style12"><spring:message code="label.selectHours"/></span>
<form:select path="selectHours" name="selectHours" id="selecte" onchange="ShowSkill(this.selectedIndex)">
<form:option selected="selected" value="event_one">1 HR</form:option>
<form:option value="event_two">2 HR</form:option>
<form:option value="event_three">3 HR </form:option>
<form:option value="event_four">4 HR</form:option>
<form:option value="event_five">5 HR </form:option>
    </form:select>
</div>     
<div id="halfDay" style="display:none">
</div>    
    </tr><br>    
<tr>   <td>  <spring:message code="label.reason"/>    <br />                        </td>           <td>     <textarea rows="5" cols="22"  name="reason"> </textarea>   </td>   
    </tr>     
    <tr>    <td><spring:message code="label.FirstApprover"/></td>   
        <td>    <form:select path="FirstApprover" name="FirstApprover" >
<form:option value="zafar " >Zak </form:option>
<form:option value="priyanka">Ranka</form:option>
            </form:select> </td>   </tr>      
    <tr>    <td><spring:message code="label.finalApprover"/></td>   
    <td>    <form:select path="finalApprover" name="finalApprover" >
<form:option value="zafarm" >Zak </form:option>
<form:option value="priyanka">Ranka</form:option>
    </form:select> </td>   </tr>         
    <tr>    <td colspan="2"> &nbsp;   <br> </td>   </tr>      
    <tr>    <td > &nbsp;   </td>   
    <td >    <input type="reset"> &nbsp; &nbsp; &nbsp;    <input type="submit" value="Submit" >  </td>   </tr>   
    <tr>    <td colspan="2"> &nbsp;   <br> </td>   </tr>  </form:form>  </table>   
<script type="text/javascript">
    function ShowReg(op) {
        document.getElementById('fullDay').style.display = 'none';
        document.getElementById('halfDay').style.display = 'none';

        if (op == 1) {
            document.getElementById('fullDay').style.display = "block";
        }
        if (op == 2) {
            document.getElementById('halfDay').style.display = "block";
        }

    }
    function ShowSkill(op) {
        document.getElementById('golf').style.display = 'none';
        document.getElementById('other').style.display = 'none';

        if (op == 1) {
            document.getElementById('golf').style.display = "block";
        }
        if (op == 2) {
            document.getElementById('other').style.display = "block";
        }

    }
</script>
<div id="other" style="display:none">
</div>
 </body>
    </html>

On submitting,some content of this like leave type reason should be included as email content and class that does this is: @Service("mailService") public class ApplicationMailer { @Autowired private MailSender mailSender;

    @Autowired
    private SimpleMailMessage preConfiguredMessage;
   public void sendMail(String to, String subject, String body)
    {
        SimpleMailMessage message = new SimpleMailMessage();
        message.setTo(to);
        message.setSubject(subject);
        message.setText(body);
        mailSender.send(message);
    }
   public void sendPreConfiguredMail(String message)
    {

        public void apply(leaveapply leave) {
    SimpleMailMessage msg = new SimpleMailMessage(this.templateMessage);
            msg.setTo(order.getCustomer().getEmailAddress());
            msg.setText(
                "Dear " + order.getEmpName().getFirstName()
                    + order.getCustomer().getLastName()
                    + ", thank you);
            try{
                this.mailSender.send(msg);
            }
            catch(MailException ex) {
                  System.err.println(ex.getMessage());            
            }}}}

can any one tell me how this will be done?

Upvotes: 0

Views: 80

Answers (2)

Maheshkumar
Maheshkumar

Reputation: 764

Take a look at spring docs here which is easier and provides many utility methods.

Upvotes: 1

Manu Zi
Manu Zi

Reputation: 2370

You can take a look at this: http://www.mkyong.com/java/javamail-api-sending-email-via-gmail-smtp-example/

And the class you can declare as a Service

After this, in your controller where you need this Mailservice, you Autowired your Mailservice, and you can send mails.

Upvotes: 1

Related Questions