如何使用java库Jodd电子邮件将图像嵌入电子邮件的html正文?

如何使用java库Jodd电子邮件将图像嵌入电子邮件的html正文?,java,image,email,embed,jodd,Java,Image,Email,Embed,Jodd,在Jodd电子邮件库的主页上 这里有一个非常具体的示例,说明如何使用库将图像(而不仅仅是将其作为文件附加)嵌入到您将要发送的电子邮件中 不幸的是,包含图像的电子邮件部分的结果内容类型为: Content-Type: application/octet-stream 但为了正确显示,我们需要以下内容类型: Content-Type: image/png 例如,如果您有一个png图像 但我似乎找不到如何在Jodd电子邮件库中配置它 这就是我所追求的。谢谢:)如果您遵循Jodd站点的示例,那么您可

在Jodd电子邮件库的主页上 这里有一个非常具体的示例,说明如何使用库将图像(而不仅仅是将其作为文件附加)嵌入到您将要发送的电子邮件中

不幸的是,包含图像的电子邮件部分的结果内容类型为:

Content-Type: application/octet-stream
但为了正确显示,我们需要以下内容类型:

Content-Type: image/png
例如,如果您有一个png图像

但我似乎找不到如何在Jodd电子邮件库中配置它


这就是我所追求的。谢谢:)

如果您遵循Jodd站点的示例,那么您可以使用方法embedFile()嵌入您的文件。此方法是以下各项的“快捷方式”方法:

attach(new FileAttachment(file));
其中attach()是附加内容的中心通用方法FileAttachment依靠javax.mail设置内容类型,可能基于扩展名

因此,要手动设置内容类型,请使用genericattach()方法。例如,像这样嵌入文件:

.embedFile("d:\\c.xxx")
将内容类型设置为“应用程序/八位字节流”,因为它不能被识别为xxx扩展。相反,您可以使用以下选项:

.attach(new ByteArrayAttachment(
        FileUtil.readBytes("d:\\c.xxx"), "image/png", "c.png", "c.png"))
您可以在其中手动设置内容类型,而不考虑文件名。如果不想加载文件字节,则可以传递InputStream

另一个解决方案(如果您想继续使用embedFile)是检查您的


注意:由于有许多附加内容的组合(字节、输入流、文件、内联…),附加方法将在Jodd 3.4.1中进行重构。为了提供更为开发人员友好的api。请继续关注;)

如果您遵循Jodd站点的示例,那么您可以使用方法embedFile()嵌入文件。此方法是以下各项的“快捷方式”方法:

attach(new FileAttachment(file));
其中attach()是附加内容的中心通用方法FileAttachment依靠javax.mail设置内容类型,可能基于扩展名

因此,要手动设置内容类型,请使用genericattach()方法。例如,像这样嵌入文件:

.embedFile("d:\\c.xxx")
将内容类型设置为“应用程序/八位字节流”,因为它不能被识别为xxx扩展。相反,您可以使用以下选项:

.attach(new ByteArrayAttachment(
        FileUtil.readBytes("d:\\c.xxx"), "image/png", "c.png", "c.png"))
您可以在其中手动设置内容类型,而不考虑文件名。如果不想加载文件字节,则可以传递InputStream

另一个解决方案(如果您想继续使用embedFile)是检查您的


注意:由于有许多附加内容的组合(字节、输入流、文件、内联…),附加方法将在Jodd 3.4.1中进行重构。为了提供更为开发人员友好的api。请继续关注;)

您能发布您的mail.jar和activation.jar版本吗?我已经测试了相同的示例,内容类型对我来说设置为ok。我正在使用mail-1.4.5.jar和activation-1.1(.1.jar)。非常感谢。您能发布您的mail.jar和activation.jar版本吗?我已经测试了相同的示例,内容类型对我来说设置为ok。我正在使用mail-1.4.5.jar和activation-1.1(.1.jar)。非常感谢。还有一件事:Jodd 3.4.1(尚未发布)包含一些修复程序,用于修复ThunderBird和Gmail web客户端上嵌入图像的问题。还有一件事:Jodd 3.4.1(尚未发布)包含一些修复程序,用于修复ThunderBird和Gmail web客户端上嵌入图像的问题。