2015-07-15 2 views
-1

Я использую Netbeans IDE 8.0.2, я хочу отправить электронное письмо в свою учетную запись gmail со страницы JSP. Я включил в свои библиотеки файлы jar, такие как javax.mail.jar, activation.jar, smtp-1.5.4.jar, javax.mail-api-1.5.4.jar и mailapi-1.5.4. Мой JSP Кодекс:Отправка почты через javamail api

<%@ page import="java.io.*,java.util.*,javax.mail.*"%> 
<%@ page import="javax.mail.internet.*,javax.activation.*"%> 
<%@ page import="javax.servlet.http.*,javax.servlet.*" %> 
<% 
     String result; 
    // Recipient's email ID needs to be mentioned. 
     String to = "[email protected]"; 

// Sender's email ID needs to be mentioned 
    String from = "[email protected]"; 

// Assuming you are sending email from localhost 
    String host = "localhost"; 

// Get system properties object 
    Properties properties = System.getProperties(); 

// Setup mail server 
    properties.setProperty("mail.smtp.host", host); 


// Get the default Session object. 
    Session mailSession = Session.getDefaultInstance(properties); 

    try{ 
     // Create a default MimeMessage object. 
     MimeMessage message = new MimeMessage(mailSession); 
    // Set From: header field of the header. 
     message.setFrom(new InternetAddress(from)); 
    // Set To: header field of the header. 
     message.addRecipient(Message.RecipientType.TO, 
          new InternetAddress(to)); 
    // Set Subject: header field 
     message.setSubject("My first localhost mail!"); 
    // Now set the actual message 
     message.setText("this is my first mail. hope it works"); 
    // Send message 
     Transport.send(message); 
     result = "Sent message successfully...."; 
    }catch (MessagingException mex) { 
     mex.printStackTrace(); 
     result = "Error: unable to send message...."; 
    } 
    %> 
<html> 
    <head> 
     <title>Send Email using JSP</title> 
    </head> 
    <body> 
     <center> 
      <h1>Send Email using JSP</h1> 
     </center> 
    <p align="center"> 
     <% 
      out.println("Result: " + result + "\n"); 
     %> 
     </p> 
    </body> 
</html> 

Я всегда получаю сообщение об ошибке: Результат: Ошибка: не удалось отправить сообщение .... Заранее спасибо за помощь и советы.

+0

Вы всегда получаете сообщение об ошибке, которое вы печатаете. Это бесполезно использовать. Вам нужно предоставить фактическое исключение, которое было выбрано, и трассировку стека. – EJP

+1

В FAQ по JavaMail есть [советы по отладке] (http://www.oracle.com/technetwork/java/javamail/faq/index.html#debug) и [инструкции для доступа к Gmail] (http://www.oracle. ком/technetwork/Java/JavaMail/FAQ/index.html # Gmail). –

ответ

0

Возможно, вам потребуется разрешить доступ к вашей учетной записи gmail из сторонних приложений. Раньше у меня была эта проблема. Для обеспечения доступа выполните следующие действия:

  1. Войдите в свой аккаунт GMAIL и посетить эту страницу https://accounts.google.com/DisplayUnlockCaptcha и нажмите на кнопку, чтобы разрешить доступ.
  2. Посетите эту страницу https://www.google.com/settings/security/lesssecureapps и включите доступ для менее безопасных приложений.