Enviando e-mail - problemas!

1 resposta
Andre.flu

Não consigo fazer meu formulario de e-mail funcionar e não descubro o erro.

Me de uma força ai!!

O formulário chega direitinho aqui e todos as variaveis estão corretamente preenchidas mais não envia.

O que fazer?

pagina enviaEmail.jsp

<%@ page import="beans.BeanEmail"%>
<jsp:useBean id="email" class="beans.BeanEmail" scope="request">
<%
  try {
  
	  String mailServer = "smtp2.locaweb.com.br";
	  String assunto = request.getParameter("assunto");
	  String para = request.getParameter("para");
	  String de = request.getParameter("de");
	  String nome = request.getParameter("nome");
	  String empresa = request.getParameter("empresa");
	  String telefone = request.getParameter("tel");
	  String 	mensagem = "__________________________________________________________<br>";
	  mensagem = mensagem + "                      Mensagem do site                    <br>";
	  mensagem = mensagem + "      DE:" + nome + "             <br>";
	  mensagem = mensagem + " Empresa:" + empresa + "          <br>";
	  mensagem = mensagem + "  E-mail:" + de + "               <br>";
	  mensagem = mensagem + "Telefone:" + telefone + "         <br>";
	  mensagem = mensagem + "__________________________________________________________<br>";
	  mensagem = mensagem + request.getParameter("msg");
	  mensagem = mensagem + "__________________________________________________________<br>";
	  
	  email.sendSimpleMail(mailServer, assunto, para, de, mensagem);
	
	}catch(Exception e){
		%>
			<jsp:forward page="erros.jsp" >
				<jsp:param name="erro" value="<%= e.getCause().getMessage() %>"/>
			</jsp:forward>
		<%
	}	
%>
</jsp:useBean>

e minha classe BeanEmail.

public class BeanEmail {
	
	public static void sendSimpleMail (String mailServer, String subject,
	                            String to,String from, String mensagem)
	    throws AddressException, MessagingException {

	Properties mailProps = new Properties();
//	definição do mailserver

	mailProps.put("mail.smtp.host", mailServer);

	Session mailSession = Session.getDefaultInstance(mailProps, null);

//	As duas linhas seguintes de código, colocam no
//	formato de endereços, 
//	supostamente válidos, de email os dados 
//	passados pelos parâmetros to e from.
	
                InternetAddress destinatario = new InternetAddress (to);
	InternetAddress remetente = new InternetAddress (from);

//	As duas linhas de código a seguir, são 
//	responsáveis por setar os atributos e 
//	propriedas necessárias do objeto message 
//	para que o email seja enviado.
//	inicialização do objeto Message 
	
                Message message = new MimeMessage (mailSession);

//	Definição de quem está enviando o email
	
                message.setFrom(remetente);

//	define o(s) destinatário(s) e qual o tipo do 
//	destinatário.
//	os possíveis tipos de destinatário: TO, CC, BCC
		
	message.setRecipient( Message.RecipientType.TO, destinatario );
//	definição do assunto do email
			
	message.setSubject (subject);

//	definição do conteúdo da mensagem e do 
//	tipo da mensagem
		
	message.setContent (mensagem.toString(), "text/plain");

//	a linha de código seguinte é a responsável 
//	pelo envio do email

	Transport.send (message);
	}
}

O que esta faltando ou sobrando?? :shock: :oops: :?: :?: :?:

o erro é:

javax.servlet.ServletException org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825) org.apache.jasper.runtime.PageContextImpl.access$1100(PageContextImpl.java:64)

e

java.lang.IncompatibleClassChangeError org.apache.jsp.enviaEmail_jsp._jspService(enviaEmail_jsp.java:76) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)

1 Resposta

T

A mensagem de erro está incompleta, mas normalmente o erro “java.lang.IncompatibleClassChangeError” ocorre quando o JSP é gerado e compilado acessando uma determinada versão de uma biblioteca que você está usando, e o servlet é executado com outra versão da biblioteca.

Criado 14 de dezembro de 2004
Ultima resposta 14 de dez. de 2004
Respostas 1
Participantes 2