Не удалось сохранить данные в таблице MySql через Javamail - PullRequest
8 голосов
/ 04 октября 2009

Как я могу хранить сообщения, которые я написал через javamail, в таблицу MySQL? Я уже настроил файл конфигурации сервера james для подключения к серверу MySQL (с именем элемента данных источника maildb) и изменил элемент <inboxRepository> в файле конфигурации сервера James на

<inboxRepository>
  <repository destinationURL="db://maildb/spammer/"
    type="MAIL"/>      
</inboxRepository>

Но я все еще не могу прочитать сообщения из столбца «Входящие» таблицы спамера таблицы в почтовой базе данных в MySql.

Вот мой класс javamail:

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Properties;
import javax.mail.*;
import javax.mail.internet.*;

public class mail{

  public static void main(String[] argts){
    String to = "red@localhost";
    String from = "blue@localhost";
    String subject = "jdk";
    String body = "Down to wind";

    if ((from != null) && (to != null) 
      && (subject != null)  && (body != null)) 
    // we have mail to send
    {
      try {
        Properties props = new Properties();

        props.put("mail.host", "127.0.0.1 ");
        props.put("mail.smtp.auth","true");

        Session session = 
          Session.getInstance(props, new javax.mail.Authenticator() {

          protected PasswordAuthentication getPasswordAuthentication() {
            return new PasswordAuthentication("blue", "blue");
          }
        });
        Message message = new MimeMessage(session);
        message.setFrom(new InternetAddress(from));
        Address[] add={ new InternetAddress(to) };
        message.setRecipients(Message.RecipientType.TO,add);
        message.setSubject(subject);
        message.setContent(body, "text/plain");
        message.setText(body);
        Transport.send(message);

        System.out.println
          ("<b>Thank you. Your message to "+to+" was successfully sent.</b>");

      } catch (Throwable t) {
        t.printStackTrace();
      }
    }
  }
}

Что я здесь не так делаю и как я могу прочитать сообщение из таблицы спамеров в MySQL?

1 Ответ

1 голос
/ 13 июля 2011

Возможно, вы используете неправильный URL для базы данных: DestinationUrl = "дб: // maildb / спамер /" Я предлагаю изменить на DestinationUrl = "MySQL: // maildb / спамер /" если пункт назначения - база данных mysql, конечно.

...