我在我的一个 struts 应用程序中遇到了一个问题。我有 JSP 页面,它接受用户的输入并将其发送到电子邮件地址。我在 JSP 页面中设置的编码如下。
\n\n<%@ page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" language="java"%>\nRun Code Online (Sandbox Code Playgroud)\n\n现在,当用户提交表单以进行操作时,我使用以下代码向收件人发送电子邮件。
\n\nProperties properties = new Properties();\n properties.put("mail.smtp.host", "10.51.10.44");\n properties.put("mail.smtp.port", "25");\n properties.setProperty("charset","utf-8");\n Session session = Session.getDefaultInstance(properties, null);\n try {\n\n MimeMessage message = new MimeMessage(session);\n String msg = formatEmail(userForm.getContent(),userForm.getUsername(),ip,host);\n message.setFrom(new InternetAddress(from));\n message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));\n message.setSubject(subject, "UTF-8");\n BodyPart messageBodyPart = new MimeBodyPart(); \n messageBodyPart.setHeader("Content-Type","text/plain; charset=UTF-8"); \n System.out.println("subject :-"+subject);\n System.out.println("MESSAGE :-"+msg);\n messageBodyPart.setContent(msg.toString(), "text/html;charset=UTF-8");\n Multipart multipart = new MimeMultipart();\n multipart.addBodyPart( messageBodyPart ); \n message.setContent( multipart); \n Transport.send(message);\nRun Code Online (Sandbox Code Playgroud)\n\n但我的收件人收到的阿拉伯语电子邮件的内容和主题为垃圾邮件,如下所示。 …