网上有一些AXIS的安装文档,不是很详细,而且,我按网上的资料安装得不是很成功,老是报错,可能是因为使用了较新版本的Tomcat,AXIS. 

经过多番努力,终于配置成功,把安装过程和心得和大家分享一下. 

一.简介 
什么是SOAP?SOAP是一个应用程序间的基于XML的通信工具和规范.SOAP最初由MicroSoft和Userland公司开发,已经演化了好几个版本,当前的版本SOAP1.1正飞速发展.W3C的XML协议工作组正努力把它发展为一个真正的开发的标准.SOAP1.2草案已经发布,它能澄清1.1版规范的容易混淆的地方. 

什么是Axis?Axis总体上是一个SOAP引擎,但又不仅仅是个引擎,它还:1)是一个简单的独立的服务器2)是一个可插入到servlet 引擎(如Tomcat)中的服务3)可扩展的支持WSDL4)能根据WSDL产生JAVA文件/类5)包括一些例子程序6)包括一个可以监控TCP/IP 包的工具 

Axis起源于IBM的SOAP4J,是Apache SOAP的第三代产品,相对于以前的版本,它有如下特性:1)快速,它使用了基于事件的SAX解析机制.2)灵活,用户可以灵活定制扩展.3)稳定,接口将会变动很小.4)基于组件开发.5)支持WSDL1.1 

二.准备 
1.安装Tomcat5.0.28,这是当前稳定版本.Tomcat运行在80端口.访问http://localhost/检查Tomcat是否安装成功. 
(Tomcat+Apache+Mysql的整合安装,详见另外一篇.) 
2.下载AXIS: 
官方站点:http://xml.apache.org/axis/index.html 
下载软件:axis-bin-1_2_1.tar.gz 
3.下载相关包: 
a.mail.jar 下载地址:http://java.sun.com/products/javamail 
b.activation.jar 下载地址:http://java.sun.com/products/javabeans/glasgow/jaf.html 
c.xerces.jar 下载地址:http://xml.apache.org/xerces-j/index.html 
d.xmlsec-1.2.1.jar 下载地址:http://xml.apache.org/security/ 

三.安装 
1.将四个相关包,全部拷到<CATALINA_HOME>;/common/lib目录(Tomcat安装目录下的common/lib)下 
2.解压axis-bin-1_2_1.tar.gz,将压缩包里的webapps/axis拷到网站根目录下(如果Tomcat是默认配置,那就是<CATALINA_HOME>;/webapps/ROOT目录). 
3. 
修改Tomcat的配置文件server.xml(<CATALINA_HOME>;/conf/server.conf) 
在</Host>;前加入: 
<Context path="/axis" docBase="C:\Program Files\Apache Software Foundation\Tomcat\webapps\ROOT\axis" debug="0" reloadable="true" >; </Context>; 
(docBase里是你的实际axis存放的目录) 
注意,此步至关重要,AXIS的安装文档中没有提到此步,导致很多人安装不成功. 
如果没有此步,访问http://localhost/axis时,提示如下错误: 
Can't find bundle for base name i18n, locale en_US(zh_CN) 
表面是上看i18n国际化的问题,但既使i18n.properties,i18n_zh_cn.properties存在,也无法找到. 
网上很多朋友安装到此,无法继续下去,我也找了很多资料,都没有解决.后来查看Tomcat的文档,猜测是Tomcat配置的问题,经测试,终于成功. 
可能Tomcat的前期版本,不需此设置.没有测试过. 
另外,也可以将axis/WEB-INF/classes/*,axis/WEB-INF/lib/*的所有文件,拷到<CATALINA_HOME>;/common/lib/这个方法比较麻烦. 
注:AXIS客户端,需要拷贝axis/WEB-INF/lib/*到<CATALINA_HOME>;/common/lib/ 

四.测试 
重新启动Tomcat. 
1.访问:http://localhost/axis 
点击:Validation - Validate the local installation's configuration测试是否有错. 
2. 
写个小程序: 
public class HelloService 

public String sayHello(String username) 

return "Hello:"+username; 


另存为axis目录下HelloService.jws 
再能过WEB访问: 
http://loalhost/axis/HelloService.jws 
http://loalhost/axis/HelloService.jws?method=sayHello&amp;meter=ipaddr 


另外,如果是Apache+Tomcat整合在一块,以上配置后,还需要更改Apache的配置,在httpd.conf中加入: 
JkMount /axis/* ajp13 
通过Apache可以访问axis的Servlet