当前位置:首页 > 网络编程 > WEB编程 > JSP > Tomcat5.0.28下AXIS完全安装手册

Tomcat5.0.28下AXIS完全安装手册

点击次数:32 次 发布日期:2008-11-26 16:58:33 作者:源代码网
源代码网推荐
  网上有一些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 FilesApache Software FoundationTomcatwebappsROOTaxis" 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¶meter=ipaddr

  另外,如果是Apache+Tomcat整合在一块,以上配置后,还需要更改Apache的配置,在httpd.conf中加入:

  JkMount /axis/* ajp13

  通过Apache可以访问axis的Servlet

  五.AXIS介绍补充

  Apache Axis是Apache WebService项目中的子项目,其最初起源于IBM的"SOAP4J",应该属于最早的一批用于构造基于SOAP应用的Framework。

  目前Apache Axis已经发展到了第三代,其核心是一个SOAP处理器,用于开发包括客户端,服务器端,SOAP Gateway等各种应用。事实上Apache Axis在了1.0版后,其发行版本还包括了完整的J2EE服务器插件, WSDL支持和生成,TCP/IP监视器等组件,从这个意义上来说Apahce Axis已不仅仅是个SOAP框架了,它包含了除了UDDI外对整个Web Service协议栈(Protocol Stack)的支持。

  对大多数关心Macromedia产品的人来说,Macromedia是Axis小组的核心成员之一,他们在几乎所有J2EE服务器端的产品线中包含了 Axis,也就是说Macromedia对WebService的支持是通过Apache Axis实现的,这其中包括了JRun, Flex, ColdFusion。即便是Flash Remoting,由于其核心还是SOAP,所以也是使用了Axis的SOAP框架。

  和.NET 的WS不同,Axis是一个非常易于扩展的体系结构,其设计的核心思想是建立一个数据处理的管道,通过把handler编织成一条处理链从而无限扩展其可能性。打个比方,在输入部分开发人员既可以编写基于HTTP Basic Authentication的用户验证模块也可以插入SOAP Auth模块用于验证请求,而输出部分既可以通过XML binding把结果输出为SOAP XML也可以象Flash Remoting那样把结果输出成binary格式。

  同时Axis也提供了所有的处理模块,使得用户能在最快的时间把服务器组件发布成WS.总的来说Axis有以下几个特点:

  速度 - Axis 使用 SAX 而不是 DOM 来处理XML请求,所以速度上有很大的改善。

  灵活性 - 刚才也提到了,Axis的体系结构是一个全开放式的处理器,所以扩展模块极为方便。面向组件的发布方式 - 处理链上可重复使用组件来完成类似的操作。

  Transport 框架 - Axis的核心和底层的transport完全分离,也就是说不管WS的Transport是HTTP, FTP, MAIL, MESSAGE QUEUE,只要插入对应的Transport模块即可,而不需改动其他部分。

  WSDL1.1支持 - 可自动由Java Object生成WSDL

源代码网供稿.
上一篇: J2ME简介  下一篇: 五、读取HTTP请求头
网友评论 (0)
会员中心
网络编程
本站推荐
网络编程之精华