Java Mail Server
JAMS is a fully functioning SMTP mail server written entirely in Java. It supports 3rd party plug-ins for mail filtering. For performance an RDBMS is used as a message store.
Status
News
Currently the server can receive, store and relay messages. Messages are stored in the Instant DB RDBMS via COBRA. However Instant DB is a commercial solution, JAMS is not tied to this database. The COBRA object-persistence layer should run on any RDBMS supporting a JDBC driver. Other databases could be used for reasons of performance, robustness or licencing.
The rational behind using an RDBMS is performance. This structure would also enable JaMS to be developed into a groupware type product.
JAMS has been contributed to the GNU free software effort and is distrubuted under the GNU general public license. This does not affect any third party packages that JAMS uses.
Release 0.18, 18th February 2000
This release features a number of improvments to the mail delivery mechanism.
- The connection mechanism to the mail server uses Brian Wellington's DNS resolver library more extensively.
- Messages are now not automatically deleted after delivery failure, instead a warning is sent back to the originator after a pre-determined time then after a second period the message is deleted and the originator notified.
- There is still a problem where the message has multiple recipients, the message is deleted after the first successful send. This is now fixed and included in this release.
- The SMTP chat logic has been moved into its own method, this is a precursor to fixing the problem mentioned above.
- Built against the latest version of Instant DB and dnsjava
- The project is now under CVS.
Developments
If you are interested in taking on any of these tasks then let me know:-
- Design and implementation of message filters
- POP3 or IMAP server
- Administration tool for managing server and users
The administration tool and POP3 server will read/write the COBRA database directly via the RMI interface. This will require an object locking mechanism to be implemented (I have one somewhere to reuse).
Roadmap:
v 0.19: Fully functioning mail delivery mechanism
v 0.20: Locking implemented with multithreaded mail delivery
v 0.30: Admin interface based on Java Server Pages
v 0.40: Web mail interface based on Java Server Pages
v 0.50: Filter mechanism (user configurable via Web interface)
Download
Jams version 0.18 can be downloaded from sourceforge.
last updated: 16 August 2004
email: jams@kimble.co.uk
©1994-2005All text and images copyright: www.abcseo.com; last updated: Wed Apr 5 10:53:34 2006
