- 浏览: 349641 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
haoxinren:
: 不错 果然是hibernate 对数据库字段的问 ...
hibernate异常之表的映射 -
du_bo:
[b][/b]真的非常强大。。。多谢分享
牛B的js 时间控件(年月日时分秒) -
hd7139:
真的很强大,不错
牛B的js 时间控件(年月日时分秒) -
woguanqihu:
是啊大哥啊,给个图片多好啊
牛B的js 时间控件(年月日时分秒) -
kelenok:
火狐里貌似不显示控件
牛B的js 时间控件(年月日时分秒)
一、简介
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部分。
三、项目应用
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
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进行相应的包装,主要是后台管理这一块。
发表评论
-
Java类的完整构造执行顺序(转)
2012-02-22 14:02 1105转自:http://hi.baidu.com/zh ... -
Class.forName( )你搞懂了吗?——转
2012-02-22 12:16 1041终于明白为什么加载 ... -
我常去的编程技术网站
2010-11-03 20:16 1354[序言] 其实大家都可以成为一个厉害的软件开发人员,希望大家通 ... -
java验证日期格式
2010-08-02 20:33 3474写道验证日期格式是否正确 @SuppressWarning ... -
实现JavaBeans到XML的相互转换
2009-10-19 18:21 886不用复杂的代码,就可以让您的JavaBeans自己控制到XML ... -
java进行数据加密
2009-06-23 18:01 3230本文主要谈一下密码学中的加密和数字签名,以及其在java中如何 ... -
DWRUtil未定义解决
2009-05-22 16:11 1920转自:http://www.iteye.com/topic/3 ... -
java面试宝典1
2009-05-22 11:34 1085java面试宝典 2009-04-06 19 ... -
java:comp/env
2009-04-29 15:21 3105try{ Context ctx=(Conte ... -
javamail pop3 原理
2009-04-27 15:53 1841在日常的生活中,书信往来是我们日常生活中不可缺少的一个环节。随 ... -
Tomcat中文手册
2009-04-27 13:44 1616本文档提供关于Tomcat的 ... -
JMail 异常: java.lang.NoClassDefFoundError: javax/ac
2009-04-22 11:36 1892今天开发邮件系统,发送程序能在main函数中顺利运行.可是布署 ... -
getResourceAsStream()读取取资源文件的探讨
2009-04-21 16:10 8161首先是this.getClass().getClassLoad ... -
java中进行二进制,八进制,十六进制,十进制间进行相互转换
2009-03-08 22:24 1664十进制转成十六进制:Integer.toHexString(i ... -
Class.forName()与new 的区别
2008-09-18 13:50 1424Class.forName(xxx.xx.xx) 返回的是一个 ... -
java 科学记数法数转为其他数值类型
2008-06-11 11:30 3478在实际用运中,经常遇到要把科学计数的数值转为其他类型的数值,比 ... -
java Date学习总结
2008-05-27 10:34 11831.计算某一月份的最大天数Calendar time=Cale ... -
XP系统如何配置JAVA环境变量
2008-05-14 11:40 3179点击我的电脑然后按右键——属性——高级——环境变量——新建—— ... -
java中的字节流和字符流的存储比较
2008-04-22 18:12 2429引用:http://wuliguo.blog.51ct ... -
java字节流和字符流
2008-04-22 18:09 6946Java流操作 对于我们常用的GBK中,英文是占用1个字 ...
相关推荐
Apache James 默认使用的端口包括: - SMTP服务:25端口 - POP3服务:110端口 - NNTP服务:119端口 使用`lsof -i:端口号`命令检查这些端口是否被占用,如有其他服务占用,需要关闭或调整服务端口。 **关闭Sendmail...
自己爬取的apache james 邮件服务器的英文documention,作为本地使用,结构清晰 James components About James Server Mailets Quick Start Mailet API Basic Mailet Toolkit Standard Mailets Crypto Mailets ...
刚进个小公司就让我搭建个服务器,研究了一个星期,总算是搞定了,网上找了很多资料,看了很久也研究了很久,最后总结了下...搭建成功...收发邮件都没问题...不过如果是收邮件的话必须要有注册的域名,也就是公网的域名才...
Apache Ant,全称“Another Neat Tool”,由James Duncan Davidson创立,是一款基于Java的项目构建工具,旨在简化和标准化软件开发流程中的构建任务。Ant的核心优势在于其跨平台特性、简单性和可扩展性。 1. **跨...
2. **Apache James 入门手册.CHM**:Apache James是开源的邮件服务器项目,这个手册应该是为初学者提供如何配置和使用James的指导。 3. **JBPM入门.CHM**:JBPM是一个业务流程管理(BPM)和工作流系统,用于管理和...
### TortoiseSVN-1.8.8 使用手册(中文版)知识点概览 #### 一、TortoiseSVN简介 **TortoiseSVN**是一款为Windows平台设计的Subversion (SVN) 客户端软件。它提供了一个直观的图形用户界面,使得版本控制操作变得...
对于Apache服务器,mod_rewrite模块和.htaccess文件的管理手册是解决Web服务器重写规则的必备参考。 上述推荐的速查手册集合不仅涵盖了Web开发的各个方面,而且都是英文资源,对于需要提高英文阅读能力的程序员来说...
本文主要围绕福建应诚软件有限公司提供的Netone安装手册,详细介绍了在Windows环境下搭建一个基于Java技术栈的系统所需的基础步骤。 1. **域名和IP设置**:在本地进行测试时,可以编辑`hosts`文件来映射IP与域名,...
Apache Ant,作为一款基于Java的构建工具,自其问世以来便以其强大的功能、跨平台的特性以及易于使用的特性迅速在Java开发者社区中获得了广泛的认可。由James Duncan Davidson命名的Ant,全称Another Neat Tool,...
一个DTD文档包含:元素的定义规则,元素间关系的定义规则,元素可使用的属性,可使用的实体或符号规则。 DTD文件也是一个ASCII的文本文件,后缀名为.dtd。例如:myfile.dtd。 为什么要用DTD文件呢?我的理解是它...
- **邮件服务器**:对于某些项目,可能需要发送电子邮件通知,因此需要配置邮件服务器,如Apache James或SendGrid。 - **创建数据库和表**:在MySQL中创建项目所需的数据库和表,用于存储业务数据。 3. **开发...
Tomcat 由 Apache 软件基金会支持并维护,最初是由James Duncan Davidson开发的。Tomcat 6 是 Tomcat 的一个重要版本,它基于 Java Servlet 规范 2.5 和 JavaServer Pages (JSP) 规范 2.1 构建,提供了一个稳定、...
- **Apache JAMES 邮件服务器**:版本 2.3.2,用于处理电子邮件通知等通信需求。 - **OpenFire Jabber 服务器**:版本 3.6.4,支持即时消息和在线状态等功能,增强团队之间的实时沟通。 - **Mozilla Firefox**:版本...
- **简介**: 介绍了Java消息服务的基础知识和Apache ActiveMQ的使用方法,是学习消息队列技术的好选择。 2. **《Java网络编程》** - **简介**: 本书详细讲解了Java网络编程的技术细节,适合希望开发网络应用程序...
Struts是Apache软件基金会开发的一款开源MVC(Model-View-Controller)框架,用于构建Java Web应用程序。在电信报表系统中,Struts框架提供了以下关键功能: 1. **分层架构**:Struts将应用程序分为模型、视图和...
- `LICENSE`:这个文件包含了 JPeerGen 的开源许可协议,通常遵循 MIT、Apache 2.0 或 GPL 等开源许可证,具体要看项目规定,这允许用户自由地使用、修改和分发 JPeerGen。 - `README.txt`:此文件通常提供关于如何...
"technische_Doku.tex"和"Betreiber_Doku.tex"分别可能是技术文档和操作员手册的源文件,为开发者和管理员提供了系统的技术细节和操作指南。 开源软件意味着源代码对公众开放,任何人都可以查看、修改和分发。这种...
在数据处理和文本分析领域,Java有丰富的库支持,比如Apache Mahout和Weka,它们提供了实现LSA所需的工具和算法。 【压缩包子文件的文件名称列表】: SWE400Project1-master 这个文件名表明了项目源代码的主分支,...
2. **LICENSE**:项目的许可协议,如果是开源,可能是GPL、MIT或Apache等。 3. **src**:源代码目录,包含项目的各种编程语言文件(如Python、JavaScript或Java)。 4. **docs**:文档目录,可能有项目的设计文档、...