Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Проблема с отправкой почтой.


Автор: svby 26.7.2005, 00:45
Проблема с отправкой почтой. С jsp-страніцы отправляется сообщение на почтовый адрес. Когда делаю это на локальном компе всё работает. Когда закачиваю сайт на сервер не работает.

Код моей проги:
Код

Properties properties=System.getProperties();
properties.put("mail.smtp.host", smtpHost);
Session session=Session.getDefaultInstance(properties);
Message mailMsg=new MimeMessage(session);
InternetAddress[] addresses=null;
try{
    addresses=InternetAddress.parse(to, false);
    mailMsg.setRecipients(Message.RecipientType.TO,addresses);
    mailMsg.setFrom(new InternetAddress(from));
    mailMsg.setSubject(subject);    
    mailMsg.setText(content);
    Transport.send(mailMsg);
}catch(Exception exc){
   throw new Exception();

}

Администратор сервера объяснил это так:"Блокируются исходящие соединения на порт 25. Отправлять сообщения можно ТОЛЬКО через локальный почтовый сервис. В PHP это реализует функция mail(), а каким образом это реализуется в JSP, я Вам не подскажу."

Вопрос:Что такое "локальный почтовый сервис" и как это реализуется в java.

Автор: Domestic Cat 26.7.2005, 01:10
А если в пропертях установить локалхост и (любой)порт,

Автор: svby 26.7.2005, 03:04
Код

properties.put("mail.smtp.host", "localhost");
properties.put("mail.smtp.port", "2525");  

Так всё равно не работает. И на локальном компе перестаёт работать.

Автор: Domestic Cat 26.7.2005, 03:16
Так у тебя смтп сервер локально стоит?

Автор: DEER 26.7.2005, 09:06
Короче так...
Пускай у нас наш внутренний сервер называеться "ourserver".
При указании отправителя
Код

msg.setFrom(new InternetAddress(fromAddress));

если указать адрес например [email protected], то наш внутрений сервер это сообщение не пропускает, для того чтоб пропустил необходимо:
- либо в качестве отправителя указывать адрес с нашего сервака, типа [email protected]
- либо необходимо вводить дополнительные параметры аутентификации(так пишется?smile), какие именно мы ещё не разобрались, да пока не до этого(наш ведущий уже эти параметры нашёл, но его счас нет и я не могу тебе сказать какие)

Автор: Guest 23.8.2005, 17:05
При выполенении кода из шапки выскакивает следующее исключение:
Код

IOException while sending message;
  nested exception is:
        javax.activation.UnsupportedDataTypeException: no object DCH for MIME type text/plain

Плз, подскажите в чем причина? Как исправить?

Автор: Zandr 24.8.2005, 07:03
svby, пусть админ сервака скажет какие настройки почты в php.ini (вполне возможно что PHP отправляет почту на серваке не ч-з SMTP сервис, а ч-з запуск чего-нибудь типа sendmail). И весьма странно что в javax.activation нет Data Content Handler (если я правильно раскрыл DCH) для такой простой вещи как text/plain. Ну и еще: что вот такой код выдаст http://forum.vingrad.ru/index.php?showtopic=53787&view=findpost&p=499940

Автор: Maksym 19.3.2006, 14:55
Zandr
Ты же уже решил эту проблему в http://forum.vingrad.ru/index.php?showtopic=53787&st=50 :-)
Guest
http://forum.vingrad.ru/index.php?showtopic=53787&st=50 глянь :-)

Автор: batigoal 19.3.2006, 16:17
Maksym, посмотри на даты постов smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)