2016-11-15 9 views
1

私はHTMLテキストと添付ファイル付きのメールを送信し、エラーを取得しています:GWTのJavaメール - java.io.UnsupportedEncodingException:text/htmlの

java.io.UnsupportedEncodingException: text/html 

コードは次のとおりです。

public void emailMessage(String emailSubject, String message, String emailaddress, String imagePath) { 
    //Send an email 
    try { 

     //Send an email 
     SimpleEmail email = new SimpleEmail(); 
     email.setHostName("mail.org"); 
     email.setSmtpPort(25); //No authentication required 
     email.setFrom("address.org"); 
     email.addTo(emailaddress); 
     email.setSubject(emailSubject); 
     email.setCharset("utf-8"); 

     // Set the email message text. 
     MimeBodyPart messagePart = new MimeBodyPart(); 
     messagePart.setText(message, "text/html"); 

     // Set the email attachment file 
     FileDataSource fileDataSource = new FileDataSource(imagePath); 

     MimeBodyPart attachmentPart = new MimeBodyPart(); 
     attachmentPart.setDataHandler(new DataHandler(fileDataSource)); 
     attachmentPart.setFileName(fileDataSource.getName()); 

     // Create Multipart E-Mail. 
     MimeMultipart multipart = new MimeMultipart(); 
     multipart.addBodyPart(messagePart); 
     multipart.addBodyPart(attachmentPart); 

     email.setContent(multipart); 

     //Send the email 
     email.send(); 

    } catch (EmailException e) { 
     e.printStackTrace(); 
    } catch (MessagingException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    }  
} 

当初私は働いていた添付ファイルなしでメールを送っていました。その後、添付ファイルのmultipartを追加しましたが、text/htmlはもはや有効ではありません。

+0

このJakata一般的な電子メールのAPIは、あなたの問題http://commons.apache.org/proper/commons-email/を解決するための別の方法で、このお試しくださいAPIもメールの扱いにはいい –

答えて

7

textPart.setText(text, "utf-8"); 

または

htmlPart.setContent(html, "text/html; charset=utf-8"); 
+0

こんにちはアンドレイ、第2の治療法があります。今、添付ファイル名に問題があります。私はそれについて新しい質問を提起します。 – Glyn

関連する問題