java – Wildfly 9.x无法编码希腊语附件文件名
我使用
javax.mail来调用邮件服务器并将文件作为邮件附件发送,编码文件名如下:MimeUtility.encodeText(filename,“UTF-8”,null)
虽然这在WildFly 8上运行良好,但它在WildFly 9.x上使用相同的邮件服务器失败.我的意思是以这种格式收到附件说明:= UTF-8BzrTOv866zrnOvM63IM68zrUgzrXOu867zrfOvc65zrrOsS5wZGY == 我一直在努力: 1)在应用程序服务器上找到相对设置 – 没有运气. 2)使用ISO-8859-7进行编码,只能偶尔使用,因为它似乎取决于文件名长度和某些字符的存在. 3)在客户端(微软展望)上找到一个相对设置,我想错过了一些信息才能成功解码. 有任何想法吗? 提前致谢!! 解决方法
为了测试你的问题,我创建了一个演示项目
here.它在各个部分发送带有非ascii符号的消息,但不使用encodeText,因为它由Mail API自动处理.我用Wildfly 8,9,10对它进行了测试,将消息发送到
http://mailtrap.io.
第一个屏幕显示从Wildfly 8发送的消息.附件未正确发送,因此不存在: 第二个屏幕是Wildfly 9发送的消息(10个相同).如您所见,有一个附件具有正确的文件名: 那么问题可能出在这里? > Wildfly 8附带Java Mail API 1.5.1 我认为您遇到了Java Mail 1.5.1版中的错误. 最有可能的是,当你针对Wildfly 8(手动使用encodeText)进行编码时,你解决了这个bug,现在这种解决方法会给你带来问题. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |