当前位置: 技术问答>java相关
JavaMail问题
来源: 互联网 发布时间:2015-10-26
本文导语: 我用James做Mail Server。文件存放。 由于James只支持POP3,不支持IMAP。 所以想直接去管理邮件服务器上的文件夹。 MineMessage 可以由 new MineMessage(Session sess,InputStream is)得到。 如: InputStream is = new FileInputStream("[邮件...
我用James做Mail Server。文件存放。
由于James只支持POP3,不支持IMAP。
所以想直接去管理邮件服务器上的文件夹。
MineMessage 可以由 new MineMessage(Session sess,InputStream is)得到。
如:
InputStream is = new FileInputStream("[邮件文件名]");
Session sess = Session.getInstance( System.getProperties() );
MimeMessage msg = new MimeMessage(sess,is) ;
可以读出Msg的内容什么的。如msg.getSubject(),可以返回邮件主题。
但更新没用:
msg.setFlag(Flags.Flag.DRAFT,true) ;
msg.saveChanges() ;
msg.writeTo(os) ;
。。。。。。
在另一个进程里msg.isSet(Flags.Flag.DRAFT)仍然返回false.
高手们给点提示,这种思路行不行,能不能提供点更有效的方法,思路。。
在POP3上能做的事太少了!谢谢!!!
由于James只支持POP3,不支持IMAP。
所以想直接去管理邮件服务器上的文件夹。
MineMessage 可以由 new MineMessage(Session sess,InputStream is)得到。
如:
InputStream is = new FileInputStream("[邮件文件名]");
Session sess = Session.getInstance( System.getProperties() );
MimeMessage msg = new MimeMessage(sess,is) ;
可以读出Msg的内容什么的。如msg.getSubject(),可以返回邮件主题。
但更新没用:
msg.setFlag(Flags.Flag.DRAFT,true) ;
msg.saveChanges() ;
msg.writeTo(os) ;
。。。。。。
在另一个进程里msg.isSet(Flags.Flag.DRAFT)仍然返回false.
高手们给点提示,这种思路行不行,能不能提供点更有效的方法,思路。。
在POP3上能做的事太少了!谢谢!!!
|
不知道你的目的是什么,假如你想利用 james 做 webmail 的话最好利用 JDBC 数据库做 repository, 然后通过修改数据库的记录实现各种操作比较方便。 但 james 本身 repository 保存的信息还不能足够架构一个webmail
你上面的方法原理上说没有错,看你各个步骤操作对没有。
你上面的方法原理上说没有错,看你各个步骤操作对没有。
|
其实也不用db用XML记录邮件信息就可以了