Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Русские буквы в JavaMail API, сообщения на русском в непонятн кодир. 
:(
    Опции темы
http
  Дата 6.7.2006, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 4.6.2006

Репутация: нет
Всего: нет



  
Код

<%@ page language="java" contentType="text/html; charset=windows-1251" %>
<%@ taglib uri="http://java.sun.com/products/javamail/demo/webapp" 
    prefix="javamail" %> 
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    <title>JavaMail send</title>
</head>    
<body bgcolor="white">
<javamail:sendmail 
   recipients="[email protected]"
   sender="[email protected]"
   subject="Test"
>
text abcd....
 русские буквы ! - которые не отображаются правильно 
<%=new String("и даже так, тоже не получается".getBytes("ISO-8859-1"),"cp1251")%>
</javamail:sendmail>

<h1>Message sent </h1>    
</body>
</html>


Результат:
    text abcd....
(и) ??? ??? ?????....
   ??  ????? ??????......

 КАК ИСПРАВИТЬ?

(да кстати старую тему про отображение руск. букв не нашёл, пришлось завести новую) 
PM MAIL   Вверх
tux
Дата 7.7.2006, 08:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Чтобы передавать кириллицу в теле письма нужно установить кодировку контента письма. У тебя таглиб из учебного примера, он такого не поддерживает, максимум, что сможешь передать - это латиница. Возьми какую-нибудь библиотеку посерьезнее, например Commons-Email. Ну или допиши этот таглиб так чтобы в нем можно было content-type и кодировку письма установить, тоже не шибко сложно.   

Это сообщение отредактировал(а) tux - 7.7.2006, 08:50
PM MAIL Skype GTalk Jabber YIM   Вверх
http
Дата 10.7.2006, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 4.6.2006

Репутация: нет
Всего: нет



  Тогда как content-type и кодировку письма установить ? 
  smile  
PM MAIL   Вверх
tux
Дата 11.7.2006, 03:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



Для того, чтобы установить дефолтную кодировку для JavaMail передаем нужное свойство при создании сессии:
Код

Properties props = System.getProperties();
props.setProperty("mail.mime.charset", "UTF-8");
Session session = Session.getDefaultInstance(props, null);

Для установки контента письма используем метод setContent() вместо setText(), который передает контент с mime text/plain и кодировкой по умолчанию iso-8859-1:
Код

msg.setContent("строка по-русски", "text/plain; charset=\"UTF-8\"");

Теоретически все должно работать. 
PM MAIL Skype GTalk Jabber YIM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0700 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.