JAMES - Java Apache Mail Enterprise Server

James

Download

Guides

Get Involved {web}

Jakarta Essentials {web}

Related Projects {web}

What is it?

The Java Apache Mail Enterprise Server (a.k.a. Apache James) is a 100% pure Java server, designed to be a complete and portable enterprise mail engine solution based on currently available open protocols (SMTP, POP3, NTTP). It requires Java 2 (specific requirement is the JRE 1.3, JRE 1.4 is not yet fully supported).

news

A new Nightly build of source and binary distributions has been made, and is available at nightly
This is a release candidate for the next Milestone release which will be released as soon as any issues raised by the release candidate have been resolved.
We welcome any feedback (send mail to the lists) on this version, please use bugzilla for reporting bugs in the application and documentation.

Binary release of 2.0a1 Note: a last minute bug is preventing POP3 retrieval. This issue has been resolved in the lastest nightly build.



Design Objectives

These are some of the currently implemented features:

Complete portability Apache James is be a 100% pure Java application based on the Java 2 platform and the JavaMail 1.2 API.

Protocol abstraction Unlike other mail engines, protocols are seen only like "communication languages" ruling comunications between clients and the server. Apache James is not be tied to any particular protocol but follow an abstracted server design (like JavaMail did on the client side)

Complete solution the mail system is able to handle both mail transport and storage in a single server application. Apache James works alone without the need for any other server or solution.

Mailet support Apache James supports the Apache Mailet API. A Mailet is a discrete piece of mail-processing logic which is incorporated into a Mailet-compliant mail-server's processing. This easy-to-write, easy-to-use pattern allows developers to build powerful customized mail systems. Examples of the services a Mailet might provide include: a mail-to-fax or mail-to-phone transformer, a filter, a language translator, a mailing list manager, etc. Several Mailets are included in the JAMES distribution (see Configuration).

Resource abstraction Like protocols, resources are abstracted and, accessed through defined interfaces (JavaMail for transport, JDBC for spool storage or user accounts in RDBMS's, Apache Mailet API). The server is highly modular and reuse solutions from other projects.

Secure and multi-threaded design Based on the technology developed for the Apache JServ servlet engine, Apache James has a careful, security-oriented, full multi-threaded design, to allow performance, scalability and mission-critical use.

Anything else you may want if you help us write it :-)


Feature Status
Item Status (v2.0a2) Since First released
SMTP server Stable 1.0 0.95
Mailet Engine Stable 1.2 0.95
FileSystem mailboxes/spool Stable 1.2 1.0
RDBMS mailboxes/spool Stable 1.2 1.2
POP3 server Stable 1.1 1.0
RDBMS - Users Stable 1.2.1 1.2.1
LDAP Support - Users Experimental 1.2 1.2
TLS Support - POP3 Experimental 1.2 1.2
Remote Manager Stable 1.0 1.0
TLS Support - Remote Manager Stable 1.2 1.2
NNTP server Experimental 1.2 1.2



Copyright © 1999-2002, Apache Software Foundation