Estou com o seguinte problema … na minha classe de envio de email …
Eu tenho um form de envio que envia estes emails para a caixa de email correspondente (meudominio@meudominio.com.br) quando o usuario digita o email , seu email funciona como remetente no envio …
Quando o usuario possui um email : seunome@gmail.com e coloca isso no campo email e envia a mensagem dá o seguinte
[color=blue] erro =
javax.mail.SendFailedException: Invalid Addresses;
nested exception is:
com.sun.mail.smtp.SMTPAddressFailedException: 554 seuemail@gmail.com: Sender address rejected: Access denied[/color]
[color=red]Quando o usuario possui um email : seunome@hotmail.com e coloca isso no campo email e envia a mensagem não dá Erro , mas não
CHEGA Mensagem nenhuma …nem como lixo eletronico , ou Spamm
Então : Gmail - Não envia (como remetente via smtp )pelo meu dominio
Então : Hotmail - Envia(mas não chega nada)[/color]
[code]
package email;
import javax.mail.;
import javax.mail.internet.;
import java.util.Properties;
import java.util.Properties;
import javax.mail.Authenticator;
import javax.mail.Message;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.activation.*;
import com.sun.net.ssl.internal.ssl.Provider;
public class Email {
public void sendSimpleMail(String subject, String to, String from, String mensagem) throws AddressException, MessagingException {
java.security.Security.addProvider(new Provider());
Properties mailProps = new Properties();
mailProps.put("mail.transport.protocol", "smtp"); // diz que utilizarei um protocolo de seguran�a
mailProps.put("mail.smtp.starttls.enable", "true"); // diz que utilizarei o protocolo de seguran�a TLS
mailProps.put("mail.smtp.host", "smtp.meudominio.com.br");
mailProps.put("mail.smtp.auth", "true");
mailProps.put("mail.debug", "true");
mailProps.put("mail.smtp.debug", "true");
mailProps.put("mail.mime.charset", "ISO-8859-1");
mailProps.put("mail.smtp.port", "465");
mailProps.put("mail.smtp.starttls.enable", "true");
mailProps.put("mail.smtp.socketFactory.port", "465");
mailProps.put("mail.smtp.socketFactory.fallback", "false");
mailProps.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
Authenticator auth = new Autenticacao();
Session session = Session.getDefaultInstance(mailProps, auth);
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.setHeader("Disposition-Notification-To","meudominio@meudominio.com.br");
message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.setSubject(subject);
message.setContent(mensagem.toString(), "text/html");
Transport.send(message);
}
private class Autenticacao extends javax.mail.Authenticator {
public PasswordAuthentication getPasswordAuthentication() {
String user = "meudominio@meudominio.com.br";
String pwd = "minhaSenha";
return new PasswordAuthentication(user, pwd);
}
}
} [/code]
Se alguém puder me ajudar…