Fórum Envio Email JSF #528474
12/08/2015
0
Olá a todos estou tentando disparar um e-mail através de um formulário.
Tenho esse ManagedBean abaixo onde tenho um método que dispara um e-mail. Quando faço no Java Puro instanciando a classe e chamando o método o e-mail é disparado normalmente, mas quando chama o método pelo commandButton o e-mail não é enviado e simplesmente não acontece nada.
Algum poderia me ajudar.
Tenho esse ManagedBean abaixo onde tenho um método que dispara um e-mail. Quando faço no Java Puro instanciando a classe e chamando o método o e-mail é disparado normalmente, mas quando chama o método pelo commandButton o e-mail não é enviado e simplesmente não acontece nada.
Algum poderia me ajudar.
<h:form>
<h:panelGrid>
<h:outputLabel for="name" value="Name"/>
<p:inputText id="name" required="true" value="#{contactMB.contact.name}"/>
<h:outputLabel for="email" value="Email"/>
<p:inputText id="email" required="true" value="#{contactMB.contact.email}"/>
<h:outputLabel for="message" value="Your Message"/>
<p:inputTextarea rows="6" cols="33" value="#{contactMB.contact.message}"/>
<p:commandButton value="Submit" action="#{contactMB.sendEmail}"/>
</h:panelGrid>
</h:form>@ManagedBean
public class ContactMB {
private Contact contact = new Contact();
/**
* @return the contact
*/
public Contact getContact() {
return contact;
}
/**
* @param contact the contact to set
*/
public void setContact(Contact contact) {
this.contact = contact;
}
private EntityManager getManager() {
FacesContext fc = FacesContext.getCurrentInstance();
ExternalContext ec = fc.getExternalContext();
HttpServletRequest request = (HttpServletRequest) ec.getRequest();
return (EntityManager) request.getAttribute("EntityManager");
}
public void getSendEmail() {
final String username = "paulo@digitalset.gt";
final String password = "minhasenha";
Properties props = new Properties();
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.port", "587");
Session session = Session.getInstance(props,
new javax.mail.Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username, password);
}
});
try{
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress("paulo@digitalset.gt"));
message.setRecipients(Message.RecipientType.TO, InternetAddress.parse("paulo@digitalset.gt"));
message.setSubject("TESTE");
message.setText("TESTE TESTE TESTE");
Transport.send(message);
System.out.println("Done");
}
catch(MessagingException e){
throw new RuntimeException(e);
}
}
}
Paulo Henrique
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)