Apache James
{{Short description|Open-source mail server}}
{{Notability|date=October 2024}}
{{Use US English|date=January 2025}}
{{Infobox software
| name = Apache James
| logo = File:Apache_James_logo.svg
| screenshot =
| caption =
| collapsible =
| author =
| developer = Apache Software Foundation
| released =
| latest release version = 3.8.2
| latest release date = {{Start date and age|2025|01|29}}{{cite web |url= https://github.com/apache/james-project/releases/tag/james-project-3.8.2 |title=GitHub tag: james-project-3.8.2 |website=GitHub |access-date=May 9, 2025}}
| latest preview version =
| latest preview date =
| repo = {{URL|https://git.apache.org/repos/asf/james-project.git|James Repository}}
| programming language = Java
| operating system =
| platform = Java SE
| language =
| genre = Mail transfer agent
| license = Apache License 2.0
| website = {{URL|//james.apache.org}}
}}
Apache James, or Java Apache Mail Enterprise Server, is an open source SMTP and POP3 mail transfer agent written entirely in Java.[http://james.apache.org/server/index.html James Server - Overview] James is maintained by contributors to the Apache Software Foundation, with initial contributions by Serge Knystautas.{{Cite web |url=http://james.apache.org/weare.html |title=James Project - Who We Are |access-date=2008-02-22 |archive-url=https://web.archive.org/web/20111101190140/http://james.apache.org/weare.html |archive-date=2011-11-01 |url-status=dead }} IMAP support was added in 2010 in version 3.0-M2 (released as stable 3.0.0 in 2017), and JMAP support in version 3.6.0 in 2021. In 2021 open source company Linagora upgraded the government system providing email for every citizen of Estonia to use Apache James.{{Cite web|title=Apache James |publisher=Linagora |url= https://linagora.com/en/apache-james |access-date=January 27, 2025 }}{{Cite web |title=Highlight Track: Getting Apache James to serve 1M+ digital mailboxes of all Estonian residents |work=ApacheCon@Home |publisher=ApacheCon |date=September 21, 2021 |url= https://www.apachecon.com/acah2021/tracks/highlight.html |access-date=January 27, 2025 }}
The James project manages the Apache Mailet API which defines "matchers" and "mailets". These allow users to write their own mail-handling code, such as to update a database, build a message archive, or filter spam. A matcher is used to classify messages based on some criteria, and then determines whether the message should be passed to an appropriate mailet for processing. Mailets are so-called due to their conceptual similarity to a servlet,{{cite web |url=http://www.ibm.com/developerworks/java/library/j-james1.html |title=Working with James |access-date=2008-02-22 |author=Claude Duguay |date=2003-06-10 |publisher=IBM| archive-url= https://web.archive.org/web/20080129160018/http://www.ibm.com/developerworks/java/library/j-james1.html#resources| archive-date= 29 January 2008 | url-status= live}} and arose because Sun Microsystems declined a proposal to include mail-handling in the servlet implementation. James ships with a variety of pre-written matchers and mailets to serve common tasks. Many sets of mailets and matchers can be combined to produce sophisticated and complex functional behaviour.
The Apache James project also produces pure Java libraries for implementing Sender Policy Framework (SPF), the Sieve mail filtering language, and parsing MIME content streams, independent of Sun's JavaMail API.
Development
James was originally formed under the Jakarta Project as Jakarta-James.{{cite web |url=http://www.apache.org/foundation/records/minutes/2003/board_minutes_2003_01_22.txt |title=Board of Directors Meeting Minutes |access-date=2008-02-23 |date=2003-01-22 |publisher=Apache Software Foundation}} In January 2003, James was upgraded to a top-level Apache project in a unanimous decision by the ASF Board of Directors, under the chairmanship of Serge Knystautas. James was initially distributed within the Phoenix container, which implemented the Apache Avalon application framework.
After the closure of the Apache Avalon project in 2005, the Apache James server code was extensively reworked to use the Spring application framework, which was finally released as version 3.0.0 in 2017.{{Cite web|title=Commit 59f8772: CHANGELOG.md |work=Apache James Project |via=GitHub |url= https://github.com/apache/james-project/commits/59f8772/CHANGELOG.md |date=July 17, 2024 |access-date=January 27, 2025}}
See also
References
{{Reflist}}
External links
- {{official website|//james.apache.org}}
- [https://www.ibm.com/developerworks/java/library/j-james1.html Working with James] at IBM developerWorks
{{Apache Software Foundation}}
{{Email servers}}
Category:Free email server software
Category:Free software programmed in Java (programming language)