I'm considering using dbmail, Archiveopteryx, manitou or James to persist javax.mail.Message
objects, not exactly e-mail per se. However, I'm guessing that, in the case of dbmail specifically, it's only really useful for actual sending and receiving of messages.
In this particular case, I want to take the NNTP messages which Leafnode has and put those into a RDBMS. To that end, dbmail looks interesting if only because it's an established project which presumably has solved many e-mail --> database problems. Specifically, their schema is, I expect, reasonably designed.
I'm working with javax.mail.Message
because the GNU NNTP API uses Message
, which has ups and downs in this context. (It's missing some NNTP specific functionality.)
Assuming no Java driver for dbmail, and I can't see why they would have one, how would I get messages from Leafnode to dbmail? Just send myself an e-mail on localhost?
On a sidenote, how crazy/silly is this? Is there a better general approach?
Delivering mail to a database has been done many times by many people. One example is the DBMail project. Another example is the Microsoft Exchange server, which uses a relational database to store everything.
http://www.memoryhole.net/~kyle/databaseemail.html
I would be interested to know why exchange uses an RDBMS, and what their schema looks like, perhaps there are some lessons there.