Novamente este erro chato! com o envio de emails!

5 respostas
B

Eu tenho esta classe q envia os emails para mim::

import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*; 
import javax.activation.*;

class Autenticador extends Authenticator {
  public PasswordAuthentication getPasswordAuthentication() {
    String username, password;
	username = "usuario";	
	password = "senha";
    return new PasswordAuthentication(username, password);
  }
}
public class EnvMail{
	String servidor = "";
		public boolean enviar(String fantasia, String login, String senha, String para){
			Properties props = new Properties();
	  		props.put("mail.smtp.host", "SMTP HOST");
	  		props.put("mail.smtp.auth", "true");
	  		Session session = Session.getDefaultInstance(props, new Autenticador());		
			MimeMessage msg = new MimeMessage(session);
			try {
			    msg.setFrom(new InternetAddress("EMAIL"));
			    msg.setRecipient(Message.RecipientType.TO, new InternetAddress(para));
			    msg.setSubject("SSIm");
			    // Corpo
			    msg.setText("<html><head></head><body topmargin='5' leftmargin='5'> "+
					" Coropo do email" +
			    	"</body></html>");
			    //Transport
			    Transport.send(msg);
			    return true;
			}
			catch (AddressException e) {
			    System.out.println("erro1");
			    return false;
			}
			catch (MessagingException e) {
			    e.printStackTrace();
			    System.out.println("erro2");
			    return false;
			}
		}
}

Hora funciona ora nao. o q pode estar acontecendo aqui?
O erro que da é este:

type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

java.lang.SecurityException: Access to default session denied
	javax.mail.Session.getDefaultInstance(Session.java:292)
	com.br.util.EnvMail.enviar(EnvMail.java:22)
	servlets.adm.ServAdm.doGet(ServAdm.java:122)
	servlets.adm.ServAdm.doPost(ServAdm.java:18)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	sun.reflect.GeneratedMethodAccessor2151.invoke(Unknown Source)
	sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	java.lang.reflect.Method.invoke(Method.java:324)
	org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:243)
	java.security.AccessController.doPrivileged(Native Method)
	javax.security.auth.Subject.doAsPrivileged(Subject.java:500)
	org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:272)
	org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:161)

:?: :?: :?: AHAHAHA … ja estou perdendo o sono por causa disto!
O que estas acontecendo???

5 Respostas

J

Opa

Isso está com cara de ser problema de configuração do servidor smtp e não da tua classe… :???:

T+

B

Mas que tipo de problema?
Existe alguma configuração ou bloqueio no servidor?

S

Cara, vê se você digitou o nome do smtp errado, aqui eu estava tendo este problema mas era porque eu coloquei um smtp que não existe

B

Cara o problema é que nao da certo mesmo.
Ele funciona localmente, mas no ar nao rola mesmo.

D

E ai colega…

Tive o mesmo problema…

Em vez de vc utilizar o método Session.getDefaultInstance(); utilze o Session.getInstance();

Falows… :roll:

Criado 3 de agosto de 2005
Ultima resposta 22 de ago. de 2005
Respostas 5
Participantes 4