Note that there are some explanatory texts on larger screens.

plurals
  1. POEmail not triggering
    text
    copied!<p>I want to trigger my email via servlets, but it is not triggering. When I run code as a standalone Java application, it is working fine. Below is my code.<br> Servlet is giving me problem, from server I am not able to trigger the code</p> <pre><code>package model; import java.util.Date; import java.util.Properties; import javax.mail.*; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; import javax.naming.InitialContext; importjavax.naming.NamingException; import com.sun.xml.internal.bind.CycleRecoverable.Context; public class TestJavaMail { String userid ; String password; public TestJavaMail(String userid , String password) { this.userid = userid; this.password =password; } public void process() { String[] to = {"faiz.akhtar@agnitio-technologies.com","manish.kaushik@agnitio- technologies.com", "sandeep.sharma@agnitio-technologies.com"}; Properties props = new Properties(); props.put("mail.transport.protocol", "smtp"); props.put("mail.smtp.host", "smtp.exchangemails.com"); props.put("mail.smtp.port", 25); props.put("mail.smtp.user", userid); props.put("mail.smtp.pass", password); props.put("mail.smtp.starttls.enable", "true"); props.put("mail.smtp.auth ", "true"); Authenticator auth = new javax.mail.Authenticator() { protected PasswordAuthentication getPasswordAuthentication() { return new PasswordAuthentication(userid, password); } }; Session session = Session.getDefaultInstance(props,auth); try { MimeMessage msg = new MimeMessage(session); System.out.println("Mimemessage ceated"); InternetAddress[] iaFrom = { new InternetAddress( "moonis.raza@agnitio-technologies.com") }; msg.setFrom(iaFrom[0]); InternetAddress[] iaTo = new InternetAddress[to.length] ; for(int i=0;i&lt;to.length;i++) { iaTo[i] = new InternetAddress(to[i]); msg.addRecipient(Message.RecipientType.TO, iaTo[i]); } msg.setSubject("Test Java Mail"); msg.setSentDate(new Date()); msg.setText("Hello, Congrats - It is working\n pls send acknowledgement mail to senderof u get this" + "\n as it is part of project"); Transport tran = session.getTransport("smtp"); System.out.println("Transport object created......"); //tran.setStarttls(true); tran.connect("smtp.exchangemails.com", 25, "moonis.raza@agnitio- technologies.com", "welcome"); //tran.connect(); msg.saveChanges(); System.out.println("Connect succeeded"); tran.sendMessage(msg, msg.getAllRecipients()); tran.close(); System.out.println("Mail Sent Successfully"); } catch (MessagingException mex) { System.out.println("send failed, exception: " + mex); } } } </code></pre> <p>Here is servlet code:</p> <pre><code>package com.controller; import java.io.*; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import model.TestJavaMail; /** * Servlet implementation class emailservice */ public class emailservice extends HttpServlet { protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { res.setContentType("text/html"); System.out.println("here"); PrintWriter writer = res.getWriter(); writer.println("HELLO WORLD"); String h = "hello"; writer.println("" +h); writer.println("welcome "); writer.println(req.getRemoteHost()); String userid = getServletConfig().getInitParameter("userid"); String password = getServletConfig().getInitParameter("password"); writer.println(userid); TestJavaMail t1 = new TestJavaMail(userid, password); t1.process(); writer.println("\n bhej di "); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } } </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload