【发布时间】:2012-03-23 21:09:04
【问题描述】:
我正在使用 mail plugin 从我的 grails 应用程序发送带有附件的多部分邮件。
在我的本地机器 (Mac OS X) 上一切正常。如果我将我的应用程序部署到 tomcat6(Ubuntu - )由于IllegalStateException,邮件无法发送:
Stacktrace follows:
java.lang.IllegalStateException: Not in multipart mode -
create an appropriate MimeMessageHelper via a constructor that takes a 'multipart'
flag if you need to set alternative texts or add inline elements or attachments.
at grails.plugin.mail.MailMessageBuilder.doAdd(MailMessageBuilder.groovy:347)
at grails.plugin.mail.MailMessageBuilder.attach(MailMessageBuilder.groovy:308)
at grails.plugin.mail.MailMessageBuilder.attach(MailMessageBuilder.groovy:284)
at grails.plugin.mail.MailMessageBuilder.attachBytes(MailMessageBuilder.groovy:280)
...
简单的邮件(不是多部分的)可以从 tomat6 成功发送。
这是我发送多部分邮件的代码:
mailService.sendMail {
multipart true
to mail
subject mySubject
body (view: myView, model: myModel)
attachBytes "${myTitle}.pdf", CH.config.grails.mime.types['pdf'], myBytes
}
我可以做些什么来避免这些异常?
底层 JavaMail 库位于何处?它被打包到war文件中了吗?
如何找出我的 tomcat6 和本地机器上使用的 JavaMail 版本?
【问题讨论】:
标签: java grails ubuntu tomcat6 jakarta-mail