沉沦人生

---^_^

统计

最新评论

[导入]WebService 起步


网站:JavaEye 作者:danlley 发表时间: 2007-07-17 13:34 此文章来自于 http://www.JavaEye.com
声明:本文系JavaEye网站原创文章,未经JavaEye网站或者作者本人书面许可,任何其他网站严禁擅自发表本文,否则必将追究法律责任!
原文链接: http://danlley.javaeye.com/blog/101975

1. 从APACHE的网站上下载相应资源

地址:http://www.pangex.com/pub/apache/ws/axis2/1_1_1/

说明:

1) AXIS2-1.1.1.ZIP,此文件主要用来配置系统环境变量

2) AXIS2.WAR主要用于发布你的WS(WEBSERVICE)应用——aar包

3) 系统需求:JDK5.0、TOMCAT6.X、Apache Ant version 1.7.0

2. 搭建环境

1〉 解压AXIS2-1.1.1.ZIP文件——最好放在磁盘根目录

2〉 AXIS2.WAR可以解压,也可以不解压,但是为了我们以后发布自己的服务包方便一点建议还是解压出来。然后把解压的东西放在一个名为AXIS2.WAR的文件夹中。

3〉 配置系统环境变量

配完AXIS2_HOME后别忘了再配path属性“%AXIS2_HOME%/bin;”

同时保证你的ant的path环境“D:\apache-ant-1.7.0\bin;”

 





4〉 将AXIS2.WAR放入TOMCAT服务器的相应目录中,默认是webapp,我习惯将发布目录修改成deploy

5〉 确保你可以进入下面这个目录之一:

D:\tomcat6\deploy\axis2.war\WEB-INF\services 或者

D:\tomcat6\webapp\axis2.war\WEB-INF\services

注:tomcat有两个版本,安装版和解压版,建议使用解压版

6〉 运行TOMCAT并访问一下路径:

http://localhost:8080/axis2/axis2-admin/

如果你可以使用帐号:U:admin   P:axis2 进行登录,那么环境已经配好。

7〉 

3. 建立工程

1〉 工程名:axiomproj (eclipse建立)

2〉 WS的服务实现概述

Ø         服务器端实现可以分为4类:POJOs、AXIOM、ADB、XMLBEANS和JiBX

Ø         客户端实现可以分为3类:AXIOM、ADB、XMLBEANS和JiBX

至少在Apache的WS doc中没有说明有关POJOs的客户端实现问题。我估计可能是POJOs对XML比较弱的原因吧。

3〉 加载资源包

进入AXIS2在TOMCAT中的发布路径

D:\tomcat6\deploy\axis2.war\WEB-INF\lib

将所有的资源包加载到刚刚建立的工程资源库中。

4〉 利用AXIOM实现WS

5〉 实现服务器端

编写services.xml文件,下面的清单中详细的说明了该文件的配置方法:

本工程中services.xml的配置如下:


xml 代码




  1. <?xml version="1.0" encoding="UTF-8"?>  

  2. <service name="HelloWorldService" scope="application">  

  3.     <description>Hello World Service</description>  

  4.     <operation name="getHelloWorldMs">  

  5.         <messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>  

  6.     </operation>  

  7.     <operation name="setHelloWorldMs">  

  8.         <messageReceiver class="org.apache.axis2.receivers.RawXMLINOutMessageReceiver"/>  

  9.     </operation>  

  10.     <parameter name="ServiceClass">samples.helloworld.service.axiom.HelloWorldService</parameter>  

  11. </service>   





工程的服务器端代码会被打包成一个aar包,如果在这个包中只有一个监听服务,那么这个地方的service结点中的那么属性就会默认成为该aar包的名字,

scope属性有几个选择参数:"Application", "SOAPSession", "TransportSession", "Request”。如果这里不进行设置,则默认为“Request”。

Parameters属性:services.xml中可以存在任意多个Parameter ,所有的Parameter都被转化成service的属性并加载到相应的AxisService中。但是在services.xml中至少应该存在一个这样的参数结点,并且其属性为name=” ServiceClass”,用来定义一个执行者。这个执行者真正参与服务器与客户端的互动。在服务被部署的过程中ServiceClass 被MessageReceiver类加载到容器当中。

Operation属性:该属性也是一个可扩充属性,如果在你的服务当中有多个类需要参与客户端交互,那么你仅仅需要在这里加一个operation结点就可了。

WS中客户端与服务器端进行交互可以划分成两大类:

客户端发送但不接收(服务器端接收但不发送)

客户端接收且发送(服务器端接收且发送)

6〉 实现客户端





《 WebService 起步 》 的评论也很精彩,欢迎您也添加评论。查看详细 >>





JavaEye推荐
上海:优秀公司德比:高薪诚聘 资深Java工程师
广州:优易公司:诚聘Java工程师,开发经理
上海:尤恩斯国际集团:诚聘开发工程师
北京:优秀公司NHNChina招聘:WEB开发,系统管理,JAVA开发, DBA



文章来源: http://danlley.javaeye.com/blog/101975

posted on 2007-07-17 13:34 伏羲狂徒 阅读(177) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: