Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.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 具有特殊字符的SMTPTransport和电子邮件_Java_Spring_Email_Jakarta Mail - Fatal编程技术网

Java 具有特殊字符的SMTPTransport和电子邮件

Java 具有特殊字符的SMTPTransport和电子邮件,java,spring,email,jakarta-mail,Java,Spring,Email,Jakarta Mail,我正在使用Spring和JavaMailSenderImpl发送电子邮件。但当我试图向带有特殊字符的电子邮件地址发送电子邮件时-fake@gmail.com我得到以下错误: nested exception is: com.sun.mail.smtp.SMTPAddressFailedException: 554 5.1.1 concei o-fake@gmail.com>: Recipient address rejected: User unknown in local recip

我正在使用Spring和JavaMailSenderImpl发送电子邮件。但当我试图向带有特殊字符的电子邮件地址发送电子邮件时-fake@gmail.com我得到以下错误:

nested exception is:
 com.sun.mail.smtp.SMTPAddressFailedException: 554 5.1.1 concei  o-fake@gmail.com>: Recipient address rejected: User unknown in local recipient table
 org.springframework.mail.MailSendException: Failed messages: javax.mail.SendFailedException: Invalid Addresses;
nested exception is: 
 com.sun.mail.smtp.SMTPAddressFailedException: 554 5.1.1 concei  o-fake@gmail.com>: 
 Recipient address rejected: User unknown in local recipient table
; message exception details (1) are:
Failed message 1:
javax.mail.SendFailedException: Invalid Addresses;
nested exception is:
com.sun.mail.smtp.SMTPAddressFailedException: 554 5.1.1 concei  o-fake@gmail.com>: 
Recipient address rejected: User unknown in local recipient table

at com.sun.mail.smtp.SMTPTransport.rcptTo(SMTPTransport.java:1294)
at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:635)
我的JavaMailSenderImpl配置为:

<bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
    <property name="defaultEncoding" value="UTF-8" />
    <property name="host">
        <value>${application.mail.host}</value>
    </property>
    <property name="port">
        <value>${application.mail.port}</value>
    </property>
    <property name="username">
        <value>${application.mail.username}</value>
    </property>
    <property name="password">
        <value>${application.mail.password}</value>
    </property>
    <property name="javaMailProperties">
        <props>
            <prop key="mail.mime.charset">UTF-8</prop>
        </props>
    </property>
</bean>
代码将地址发送到邮件服务器,但当它转换为字节时,不会考虑非ASCII字符


因此,无法使用Spring框架将电子邮件发送到具有特殊字符的地址?

我的邮件服务器不符合RFC6530。

邮件地址不是RFC5322定义的有效地址。您的邮件服务器可能不符合RFC6530?请看:我不认为问题出在我的邮件服务器上,因为当我通过我的电子邮件帐户发送电子邮件时,它们是在那个地址上收到的。但是我去检查了。
protected void sendCommand(String cmd) throws MessagingException {
    sendCommand(ASCIIUtility.getBytes(cmd));
}