gpt4 book ai didi

java - 教学 javax.mail、javax.activation 识别 Web 应用程序中邮件附件的 mime 类型

转载 作者:行者123 更新时间:2023-11-30 05:15:03 25 4
gpt4 key购买 nike

我从 glassfish 服务器上运行的 Web 应用程序发送邮件,使用 Java 邮件 API 非常容易。

我现在开始将文件(主要是 pdf 和 odt)附加到邮件中,这可以工作,但附件的 mime 类型设置不正确(application/octet-stream)。我尝试使用以下方式附加文件:

MimeBodyPart mimeBodyPart = new MimeBodyPart();
mimeBodyPart.attachFile(file);

和:

messageBodyPart = new MimeBodyPart();
FileDataSource source = new FileDataSource(file);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(file.getName());

但结果是一样的。来自 here我有提示将 mime.types 文件放在应用程序的 META-INF 文件夹中,但这似乎对我不起作用。我在 war 的 META-INF 和我的应用程序的耳朵中尝试了 id。

启用 javax.activation 的调试给了我这个:

INFO: MimetypesFileTypeMap: load HOME

INFO: MimetypesFileTypeMap: load SYS

INFO: MimetypesFileTypeMap: load JAR

INFO: MimetypesFileTypeMap: !anyLoaded

INFO: MimetypesFileTypeMap: not loading mime types file: /META-INF/mime.types

INFO: MimetypesFileTypeMap: load DEF

我必须将 mime.types 文件放在哪里,或者 mime 如何在我的 Web 应用程序中键入内容?

谢谢拉斐尔

最佳答案

您的应用程序必须能够从类路径加载“/META-INF/mime.types”作为资源。尝试将其包含在/WEB-INF/lib 中的 jar 文件中或将其放置在/WEB-INF/classes/META-INF/mime.types 中。

关于java - 教学 javax.mail、javax.activation 识别 Web 应用程序中邮件附件的 mime 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1766273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com