Java mail cómo enviar automáticamente un correo electrónico a condición
Nunca usó correo Java antes.
En mi aplicación web JSF, tengo una entidad(followUp)
con una propiedadprivate Date checkDate;
que corresponde a unaAnimal
entidad. (Un animal tiene muchos registros de seguimiento). De otra manera
El usuario debe crear cada 3 meses un nuevo registro en{followUp}
y márquelo como marcado y proporcione la fecha de su acción, que es "checkDate". Pero como el usuario es tan vago, lo hace solo por unos pocos animales. Por lo tanto, en realidad quiere recibir alertas por correo electrónico sobre los animales que no han sido verificados durante más de 3 meses. Ejemplo: creo unafollowUp
registro para el Animal 'A' el 01/01/2011, luego, aproximadamente el 01/04/2011, el usuario recibe un correo electrónico que le alerta para que vaya a verificar el seguimiento del Animal B.
La aplicación web se ejecuta en la red de la empresa local.
Todo lo que sé es ese fragmento:
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Properties;
class SimpleMail {
public static void main(String[] args) throws Exception{
Properties props = new Properties();
props.setProperty("mail.transport.protocol", "smtp");
props.setProperty("mail.host", "mymail.server.org");
props.setProperty("mail.user", "emailuser");
props.setProperty("mail.password", "");
Session mailSession = Session.getDefaultInstance(props, null);
Transport transport = mailSession.getTransport();
MimeMessage message = new MimeMessage(mailSession);
message.setSubject("Testing javamail plain");
message.setContent("This is a test", "text/plain");
message.addRecipient(Message.RecipientType.TO,
new InternetAddress("[email protected]"));
transport.connect();
transport.sendMessage(message,
message.getRecipients(Message.RecipientType.TO));
transport.close();
}
}
¿Debo crear, un filtro de servlet, un oyente, una aplicación con el respaldo de beans, para ese propósito? Una consulta que se repite enfollowUp
registra y devuelve el checkDate del último registro y lo compara con la fecha Hoy?
Cualquier ayuda servirá. Saludos