`
zeng_84_long
  • 浏览: 58211 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论
阅读更多
 

Apache James(Java Apache Mail Enterprise Server)是Apache组织的子项目之一,完全采用纯Java技术开发,实现了SMTP、POP3与NNTP等多种邮件相关协议。

James也是一个邮件应用平台,可以通过Mailet扩充其功能,如Mail2SMS、Mail2Fax等。James提供了比较完善的配置方案,尤其是关于邮件内容存储和用户信息存储部分,可以选择在文件、数据库或其他介质中保存。

James性能稳定、可配置性强,还是开源项目,所有源代码不存在版权问题,因此,James在项目中的应用日益广泛,现在常用版本为2.1,但最新版本2.3已经推出,在本文中,我们将仍以James2.1作为介绍蓝本。

二、安装与配置

James的安装配置过程非常简单。

第一步:安装JDK

请使用JDK1.3以上版本(推荐使用JDK1.4),假设安装在c:\jdk1.3。

第二步:下载James,并解压

可以到Apache网站上下载James2.1,下载将得到一个压缩文件james-2.1.zip,大小为4.45M,将此包解压到c:\james

第三步:直接运行或需要配置JAVA_HOME

这时,可以尝试直接双击c:\james\bin\run.bat,若启动无误,将提示如下:

Using PHOENIX_HOME:   C:\james
Using PHOENIX_TMPDIR: C:\james\temp
Using JAVA_HOME:
 
Phoenix 4.0.1
 
James 2.1
Remote Manager Service started plain:4555
POP3 Service started plain:110
SMTP Service started plain:25
NNTP Service Disabled
Fetch POP Disabled

 

也有可能启动不了,并报JAVA_HOME找不到,这时,需要指定JAVA_HOME,比较简单的方法是在c:\james\bin\run.bat中指定JAVA_HOME,修改后的run.bat如下:

……
rem
rem Determine if JAVA_HOME is set and if so then use it
rem
set JAVA_HOME= c:\jdk1.3
if not "%JAVA_HOME%"=="" goto found_java
……

      修改完后再运行run.bat,应该就可以正常启动了,若还有什么问题,请参见本文的FAQ部分

项目应用

 

三、项目应用
 
<!----><!----> <script src="http://ad.cn.doubleclick.net/adj/messagingplus.zdnet.com.cn/developer/code;sz=1x1;ord=460138741?" language="JavaScript1.1" type="text/javascript"> </script> Click here to find out more! <!----> <script language="VBScript" type="text/javascript"> on error resume next ShockMode = (IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.5")))</script> <noembed></noembed><noscript></noscript><noscript></noscript><!---->

1、  项目需求

某单位,有16个职能处室,共78台电脑(操作系统为Win98/2000/xp),其中有1台为专用服务器(Win2000),已连成局域网。为使单位内部的信息交流,尤其是文件交互更加便捷,单位决定在局域网内部架设一套E-mail系统。

2、  解决方案

在专用服务器上安装James2.1,客户端使用操作系统自带的Outlook Express。

3、  服务器端配置

首先找出专用服务器的名字,假设叫unitname。

然后打开文件c:\james\apps\james\SAR-INF\config.xml。

在config.xml文件中,找到<postmaster>Postmaster@localhost</postmaster>,把此项改为<postmaster>Postmaster@unitname</postmaster>,同理,找到<servername>localhost</servername>,把此项改为<servername>unitname</servername>。其实,改这两项就是把默认的localhost改为机器名,这样做是为了让其它机器也能访问邮件系统,当然,前提是在局域网上没有与服务器重名的机器。

4、  客户端配置

假设有一个账号,用户名为holen,密码为123456,如何在Outlook中配置呢?

首先,根据用户名,可以得出该用户邮箱地址为holen@unitname ,然后在输入POP3和SMTP服务器时,直接使用服务器机器名unitname即可。

5、  帐号管理

James的账号管理是通过telnet完成的,登录命令为:

telnet unitname 4555

其中unitname也可以换成IP,4555是端口号。登录时需要用户名和密码,初始的用户名和密码均为root。若登录成功,提示如下:

JAMES Remote Administration Tool 2.1
Please enter your login and password
Login id:
Password:
Welcome root. HELP for a list of commands

需要注意的是,所有敲入的命令都不显示在屏幕上。

输入help,将出现命令的帮助,信息如下:

JAMES Remote Administration Tool 2.1
Please enter your login and password
Login id:
Password:
Welcome root. HELP for a list of commands
Currently implemented commands:
help                                    display this help
listusers                               display existing accounts
countusers                              display the number of existing accounts
adduser [username] [password]           add a new user
verify [username]                       verify if specified user exist
deluser [username]                      delete existing user
setpassword [username] [password]       sets a user's password
setalias [alias] [user]                 locally forwards all email for 'alias' t
o 'user'
unsetalias [alias]                      unsets an alias
setforwarding [username] [emailaddress] forwards a user's email to another email
 address
unsetforwarding [username]              removes a forward
user [repositoryname]                   change to another user repository
shutdown                                kills the current JVM (convenient when J
ames is run as a daemon)
quit                                    close connection

常用的命令有listusers、countusers、adduser、deluser、setpassword等。

其中添加用户为adduser,例如:adduser holen 123456。

通过这个后台管理界面,管理员就可以实现账号管理及其他相应的管理功能。

6、  应用情况

这套系统在该单位经过一周的试运行后,已正式运行两个月,用户数约百人,一直很稳定,期间,因操作系统故障,服务器重启两次,其他时间,一直处于运行状态,性能稳定,响应速度快。

FAQ

 

四、FAQ

1、  在启动james时,提示POP3或SMTP不能使用?

请检查一下,看“管理工具—>服务”里面,是不是启动了别的邮件服务器,已将110或25端口占用了。

2、  JAVA_HOME找不到?

请在run.bat中指定JAVA_HOME,若还不行,请在“我的电脑—>系统—>高级—>环境变量”中添加一项JAVA_HOME(一般不推荐这么做)。

3、  服务器启动正常,但客户端不能收发邮件?

请检查客户端配置是否正常,参照前面所讲,另外,请检查james下的config.xml,是否把localhost改成了机器名。

五、总结

总体而言,James是一款十分优秀的邮件服务器,具有性能稳定、扩展性好、可配置性强、响应速度快、源码公开等优点。同时,由于James的后台管理不够方便、缺少必要的技术支持等原因,限制了james的高端企业级应用。

就目前情况而言,James主要用于1000用户量以内的邮件系统,而且当James用于商业性项目时,开发商一般需要对James进行相应的包装,主要是后台管理这一块。

六、参考资料

 

补充说明:在windows/system32/drivers/hosts中修改127.0.0.1指定的名字,否则可能会电子邮件服务器会拒绝服务

分享到:
评论
1 楼 shaker_86 2009-02-17  
请问可不可以编程式添加用户?

相关推荐

    apache James使用入门

    ### Apache James 使用入门详解 #### 一、Apache James 概述 Apache James 是一款由 Apache 组织开发的开源邮件服务器软件,它完全基于 Java 技术构建,支持多种邮件协议,包括 SMTP(Simple Mail Transfer ...

    Apache James专题

    "Apache James专题" Apache James是一款基于Java的开源邮件服务器软件,提供了丰富的邮件处理功能和配置选项...本文对Apache James的安装、配置和应用进行了详细介绍,为读者提供了一个深入的了解Apache James的机会。

    基于ApacheJames邮件服务器的收发邮件代码及服务

    Apache James邮件服务器是一款开源的、基于Java的全功能邮件服务器,它支持SMTP、POP3和IMAP协议,为企业和个人提供了一种可靠且可扩展的邮件处理解决方案。在本项目中,我们将探讨如何利用Apache James来实现邮件的...

    Apache James

    Apache James的设计基于组件化和容器化原则,利用了Apache Avalon和Apache Phoenix框架,使其既可以独立运行(从命令行启动),也可以嵌入到如JBoss等应用服务器中。James的架构中心是其组件化的Mail Processing ...

    apache-james java发送邮件服务器

    Apache James是开源的Java邮件服务器,它提供了全面的邮件服务功能,包括SMTP、POP3和IMAP协议的支持,使得开发者可以轻松地在Java环境中构建邮件系统。标题中的"apache-james java发送邮件服务器"指的是使用Apache ...

    Apache James邮件服务器配置

    Apache James邮件服务器是一款开源的邮件服务器软件,基于Java平台,实现了SMTP、POP3和IMAP4等邮件协议,为企业和个人提供了稳定、可扩展的邮件服务解决方案。本篇将深入探讨如何配置Apache James邮件服务器。 ...

    Apache james mailserver + Claros inTouch webmail 搭建mail系统,自己总结

    Apache James Mailserver是一款开源的邮件服务器软件,它基于Java构建,提供全面的邮件服务功能,包括SMTP、POP3和IMAP协议支持。James的核心设计目标是可扩展性和灵活性,允许用户根据需求定制邮件服务。这款服务器...

    Apache 邮件服务器 James 简单配置.doc

    通过上述详细步骤,你不仅能够顺利配置Apache James邮件服务器,还能够理解和掌握其核心组件与功能,从而在实际应用中灵活调整和优化邮件服务。Apache James作为一款成熟且强大的邮件服务器解决方案,为用户提供了...

    用 Apache James 搭建邮件服务器来收发邮件实践.docx

    ### Apache James 邮件服务器搭建与应用 #### 一、Apache James 简介 Apache James 是一款完全由 Java 编写的邮件服务器,能够提供完整的邮件收发服务。它支持标准的邮件协议,包括 SMTP(简单邮件传输协议)、...

    apache james(邮件服务器)配置

    ### Apache James 邮件服务器配置详解 #### 一、背景与动机 随着互联网的发展,邮件作为信息传递的重要工具之一,被广泛应用于个人通讯及企业内部交流。然而,许多公共邮件服务商如163、新浪等为了防止垃圾邮件的...

    apache-james-3.0-beta3-app.zip

    这个压缩包"apache-james-3.0-beta3-app.zip"包含的是Apache James项目的3.0 Beta3版本的应用程序。在这个版本中,开发者可以预览即将发布的稳定版的新特性,并对邮件服务器进行测试。 Apache James的核心组件包括...

    JMail操作详解apache-james-2.3.2.zip

    **Apache James与JMail操作详解** Apache James是一个开源的邮件服务器项目,它基于Java语言开发,提供了全面的邮件服务功能,包括SMTP、POP3、IMAP4协议的支持,同时还包含了邮件存储、邮件过滤、垃圾邮件防护等...

    解决报错java.lang.NoClassDefFoundError: org/apache/james/mime4j/MimeException

    该jar包解决报错java.lang.NoClassDefFoundError: org/apache/james/mime4j/MimeException,亲测可用。

    apache james 部署

    Apache James 是一个由 Apache 软件基金会维护的开源邮件服务器项目,它完全使用 Java 语言编写,实现了 SMTP、POP3 和 NNTP 等多种邮件传输协议。James 不仅仅是一个基本的邮件服务器,它还提供了一个可扩展的平台...

    James+Javamail构建邮件服务

    从Apache James官方网站下载所需版本的James服务器(例如james-binary-2.3.1.zip)及其源码(例如james-2.3.1-src.zip)。 - **环境配置** 确保Java环境变量已正确配置。 ##### 启动James服务器 1. **解压缩...

    apache邮件工具

    在实际应用中,Apache James的使用通常涉及到以下几个关键知识点: 1. **安装与配置**:首先,你需要下载Apache James的最新版本,并按照官方文档进行安装。配置文件通常包括`server.xml`和`mailetcontainer.xml`,...

    james3.0.1 邮件服务器

    Apache James 3.0.1 是一款开源且免费的邮件服务器软件,专为处理电子邮件通信而设计。这个软件项目由Apache软件基金会维护,提供了一种高效、可扩展且灵活的解决方案,适合各种规模的企业和组织使用。James的核心...

    james和javamail实现邮件收发(带发送附件)

    首先,James(Apache James)是一个开源的邮件服务器,它支持SMTP、POP3和IMAP协议,可以作为企业级的邮件解决方案。James的核心特性之一是其可扩展性,可以通过插件连接到各种数据库,以便存储和管理邮件数据。 ...

Global site tag (gtag.js) - Google Analytics