Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Отправка почты Java mail / 3 сообщений из 3, страница 1 из 1
12.12.2013, 20:12:37
    #38499189
Vitasya
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка почты Java mail
Добрый вечер,
хочу попросить помощи в такой проблеме - есть веб проект java(там сервлет, класс и jsp файл), который отправляет почту с помощью java mail..Если ввожу русские буквы, отправляется "???????" или другая "абракадабра" на почту. Как и где исправить ситуацию? что-то не так с кодировкой наверно. В jsp выставлял или в сервлете или в классе UTF-8, windows-1251, не помогает..

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
@WebServlet("/EmailSender")
public class EmailSender extends HttpServlet {

    private static final long serialVersionUID = 1L;

 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

            doPost(request, response);

        }

 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

                 java.io.PrintWriter out = response.getWriter();

            EmailSenderBean esb = new EmailSenderBean();// java class

        //get parameters from html form
       esb.setTo(request.getParameter("UserEmail"));

       esb.setSubject(request.getParameter("subject"),"UTF-8");

       esb.setCont(request.getParameter("message"),"text/plain;charset=UTF-8");


        try{
              esb.sendMessage();
              esb.setResponseMessage("");

              out.println("Hello " + request.getParameter("UserName") + ", your message have sent!!");

        }catch(Exception e){ 
                System.out.println("Message have not sent!");

                e.printStackTrace(new PrintStream(new File("C://MyLog.log")));

        }
   }        
}
...
Рейтинг: 0 / 0
16.12.2013, 13:32:28
    #38502083
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка почты Java mail
http://www.sql.ru/forum/1065408/javamail
Дебаггером пользоваться умеете? Однозначно определить проблема со стороны Web или JavaMail можете?
...
Рейтинг: 0 / 0
16.12.2013, 14:35:39
    #38502208
WGA
WGA
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка почты Java mail
Vitasya,

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
public class EmailService {
    private static final String MAIL_SMTP_HOST = "mail.smtp.host";
    private static final String MAIL_SMTP_PORT = "mail.smtp.port";
    private static final String MAIL_DEBUG = "mail.debug";

    @Inject
    EmailConfig config;

    public void sendWithAttachment(InputStream inputStream, String subject, String fileName, InternetAddress... mailTo) throws MessagingException {
        Properties properties = new Properties();
        properties.setProperty(MAIL_SMTP_HOST, config.getSmtpHost());
        properties.setProperty(MAIL_SMTP_PORT, "" + config.getSmtpPort());
        properties.setProperty(MAIL_DEBUG, "" + config.isMailDebug());
        Session mailSession = Session.getDefaultInstance(properties);
        try {
            // формируем содержимое письма
            MimeMultipart mimeMultipart = new MimeMultipart();
            // тело сообщения
            MimeBodyPart mailBody = new MimeBodyPart();
            mailBody.setText("См. прикпленный файл", "UTF-8", "plain" /*MIME subtype*/);
            mimeMultipart.addBodyPart(mailBody);
            // прикрепленный файл
            MimeBodyPart mailAttach = new MimeBodyPart();
            DataHandler dataHandler = new DataHandler(new ByteArrayDataSource(inputStream, "application/octet-stream"));
            mailAttach.setDataHandler(dataHandler);
            mailAttach.setFileName(fileName);
            mimeMultipart.addBodyPart(mailAttach);
            // формируем сообщение
            MimeMessage mimeMessage = new MimeMessage(mailSession);
            mimeMessage.setFrom(config.getMailFrom());
            mimeMessage.setContent(mimeMultipart);
            mimeMessage.setSubject(subject);
            mimeMessage.setRecipients(Message.RecipientType.TO, mailTo);

            // TODO envelope - шифрование, подпись...

            // отправляем письмо
            Transport.send(mimeMessage);
        } catch (IOException e) {
            throw new IllegalStateException(e);
        }
    }
}

...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Отправка почты Java mail / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]