Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java-SimpleMemessage不设置主题_Java_Email_Smtp_Apache Commons Email - Fatal编程技术网

Java-SimpleMemessage不设置主题

Java-SimpleMemessage不设置主题,java,email,smtp,apache-commons-email,Java,Email,Smtp,Apache Commons Email,我使用Apache Commons Mail,并认识到根本不使用电子邮件主题(以及其他设置,如字符编码): props.put("mail.smtp.host", "localhost"); Session s = Session.getInstance(props, null); s.setDebug(true); MimeMessage message = new MimeMessage(s); message.setHeader("Content-

我使用Apache Commons Mail,并认识到根本不使用电子邮件主题(以及其他设置,如字符编码):

    props.put("mail.smtp.host", "localhost");
    Session s = Session.getInstance(props, null);
    s.setDebug(true);

    MimeMessage message = new MimeMessage(s);
    message.setHeader("Content-Type", "text/plain; charset=UTF-8");
    message.addHeader("Content-Transfer-Encoding", "quoted-printable");
    message.setFrom(new InternetAddress("me@home.com"));
    message.addRecipient(javax.mail.Message.RecipientType.TO, new InternetAddress("you@abroad.com"));
    String subj = MimeUtility.encodeText("");
    message.setSubject("my subject with specials äöü");

    message.setText("Some text with special äöü");
    Transport.send(message);
解bug输出显示:

 DEBUG SMTP: useEhlo true, useAuth false
 DEBUG SMTP: trying to connect to host "localhost", port 25, isSSL false
 220 mydomain ESMTP Postfix
 DEBUG SMTP: connected to host "localhost", port: 25

 EHLO MyComputer
 250-PIPELINING
 250-SIZE 10485760
 250-VRFY
 250-ETRN
 250-ENHANCEDSTATUSCODES
 250-8BITMIME
 250 DSN
 DEBUG SMTP: Found extension "PIPELINING", arg ""
 DEBUG SMTP: Found extension "SIZE", arg "10485760"
 DEBUG SMTP: Found extension "VRFY", arg ""
 DEBUG SMTP: Found extension "ETRN", arg ""
 DEBUG SMTP: Found extension "ENHANCEDSTATUSCODES", arg ""
 DEBUG SMTP: Found extension "8BITMIME", arg ""
 DEBUG SMTP: Found extension "DSN", arg ""
 DEBUG SMTP: use8bit false
 MAIL FROM:<me@home.com>
 250 2.1.0 Ok
 RCPT TO:<you@abroad.com>
 250 2.1.5 Ok
 DEBUG SMTP: Verified Addresses
 DEBUG SMTP:   you@abroad.com
 DATA
 354 End data with <CR><LF>.<CR><LF>

 Some text with specials =C3=A4=C3=B6=C3=BC
 .
 250 2.0.0 Ok: queued as 9F623345F99
 QUIT
 221 2.0.0 Bye
调试SMTP:useEhlo true,useAuth false
调试SMTP:尝试连接到主机“localhost”,端口25,isSSL false
220 mydomain ESMTP后缀
调试SMTP:已连接到主机“localhost”,端口:25
电子计算机
250-流水线
250号10485760
250-VRFY
250-ETRN
250-增强状态码
250-8比特
250 DSN
调试SMTP:找到扩展名“管道”,arg“”
调试SMTP:找到扩展名“SIZE”,arg“10485760”
调试SMTP:找到扩展名“VRFY”,参数“”
调试SMTP:找到扩展名“ETRN”,参数“”
调试SMTP:找到扩展名“ENHANCEDSTATUSCODES”,arg“”
调试SMTP:找到扩展名“8BITMIME”,参数“”
调试SMTP:找到扩展名“DSN”,参数“”
调试SMTP:use8bit false
邮寄地址:
250 2.1.0正常
RCPT至:
250 2.1.5正常
调试SMTP:已验证的地址
调试SMTP:you@abroad.com
资料
354使用结束数据。
一些特殊文本=C3=A4=C3=B6=C3=BC
.
250 2.0.0正常:按9F623345F99排队
退出
221 2.0.0再见
据我所知,主题应该设置在SMTP邮件的数据部分


如何修复此问题?

如果您查看此问题(很抱歉,缓存了链接,但Oracle似乎已将此链接(重新)移动或其他内容):

  • “t+work&cd=3&hl=en&ct=clnk&gl=us&client=firefox-a
Apache Commons似乎在某种程度上影响了Java邮件。您提供的示例似乎是发送邮件的标准Java邮件方式。因此,您可以尝试以下两种方法之一:

  • 从类路径中删除commons电子邮件JAR,然后重试上述操作,
    • 或者使用其他示例,例如:
  • 使用commons电子邮件站点的(第一个)示例:

如果您查看此链接(很抱歉缓存了链接,但Oracle似乎已将此链接(重新)移动或其他内容):

  • “t+work&cd=3&hl=en&ct=clnk&gl=us&client=firefox-a
Apache Commons似乎在某种程度上影响了Java邮件。您提供的示例似乎是发送邮件的标准Java邮件方式。因此,您可以尝试以下两种方法之一:

  • 从类路径中删除commons电子邮件JAR,然后重试上述操作,
    • 或者使用其他示例,例如:
  • 使用commons电子邮件站点的(第一个)示例:

    • 我也有同样的问题

      我删除库

      <artifactId>geronimo-javamail_1.4_spec</artifactId>
      <groupId>org.apache.geronimo.specs</groupId>
      
      geronimo-javamail_1.4_规范
      org.apache.geronimo.specs
      
      从我的项目


      这是我的工作

      我也有同样的问题

      我删除库

      <artifactId>geronimo-javamail_1.4_spec</artifactId>
      <groupId>org.apache.geronimo.specs</groupId>
      
      geronimo-javamail_1.4_规范
      org.apache.geronimo.specs
      
      从我的项目


      这是我的工作

      设置主题后,调试器显示主题、内容类型和内容传输编码设置正确。但是,设置文本后,内容类型和内容传输编码设置消失。@Klaus在打印
      email.getSubject()之前的
      email.send()时,您看到了什么
      在我提到的上一个例子中()?设置是否正确?那么,您是说,当您一直执行此示例并且在服务器上收到消息时,它没有主题?您是在使用来自站点的示例逐字记录(当然,除了更改主机:端口和身份验证)还是更改了什么?您设置主题和消息本身的两行是什么?奇怪的是,您得到的消息是OK,而不是subject。设置subject后,调试器显示subject、content type和content transfer encoding设置正确。但是,设置文本后,content type和content transfer encoding设置消失了。@Klaus打印
      电子邮件时看到了什么。getSubject()
      就在
      email.send()之前。
      在我提到的上一个示例()中?设置是否正确?那么,您是说,当您一直执行此示例并且在服务器上收到消息时,它没有主题?您是在使用来自站点的示例逐字记录(当然,除了更改主机:端口和身份验证)还是更改了什么?您设置主题和消息本身的两行是什么?奇怪的是,你得到的信息是正确的,而不是主题。