- 1、本文档共39页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用AXIS2开发WebService
用AXIS2开发WebService
目 录
1. AXIS2简介 1
2. 下载AXIS2 4
2.1 Axis2发行包 4
2.1.1 标准二进制发行包 4
2.1.2 WAR发行包 5
2.1.3 源码发行包 6
2.1.4 文档发行包 6
2.2 下载AXIS2 6
2.3 下载AXIS2的eclipse插件 7
3. 安装部署AXIS2 10
3.1 部署AXIS2到Tomcat 10
3.2 安装AXIS2的eclipse插件 12
4. 编写Web Service程序 13
4.1 创建服务程序 13
4.2 打包服务 18
4.3 部署服务 24
4.4 创建C#的访问测试程序 27
4.5 在eclipse中调试Axis2服务程序 31
5. 遇到的其他问题 35
5.1 使用mons.logging后不能正常打包aar包 35
5.2 在使用Axis2 Code Generator时报java.lang.reflect.InvocationTargetException异常。 35
5.3 使用Axis2 Codegen Wizard 1.2版的插件可由WSDL生成代码,但不能在C#客户程序中访问 37
本文介绍如何在eclipse3.2下用Axis2开发web service,并将Axis2与自己的web service部署在Tomcat 6.0.18下,再通过在C#下写测试程序,来访问Tomcat下的web service。
AXIS2简介
web service是可以解决异构系统异构语言之间互通信问题,还可以做不同系统之间的数据交换。传统的异构系统异构语言之间互通方案有:Corba、DCOM、web service。Corba太复杂,DCOM使用于微软平台,而web service可跨平台实现非常简单。
web service通常使用SOAP(简单对象传输协议)作为实现机制,也就是XML-RPC的升级,也就是用XML来描述一个远程调用(RPC)的过程,用XML作为异构系统之间通信和数据交换语言。因为XML是跨平台的标准数据交换格式,所以在web service中可以用XML来描述编程语言中的函数调用过程。
web service的实现有很多,如微软的DNA解决方案,IBM的SOA解决方案。在Java语言的实现工具有:apache-AXIS;C++的工具有:gsoap;C的工具有:AXIS2C;python的工具有:soappy等。Apache Axis2项目是一个基于Java语言的Web services系统服务和客户端的实现。为了从Apache Axis 1.0中获取教训,Apache Axis2提供了一个完整的对象模型和模块化体系结构,这样可以很容易的添加功能以及支持一个新的与Web services相关的说明和建议。Axis2可以让你很容易的执行以下任务:
发送SOAP消息
接收和处理SOAP消息
从一个普通的Java类建立Web service
用WSDL来建立实现服务和客户端的实现类
很容易的从一个服务来获取WSDL
发送和接收带有附件的SOAP消息
建立或者使用基于REST的Web service
建立或者使用从WS-Security, WS-ReliableMessaging, WS-Addressing, WS-Coordination和WS-Atomic Transaction获取优势的服务
当新建议出现时,使用Axis2的模块化结构来很容易的加入对它的支持
内部流程要理解Axis2并且知道它做了些什么,你必须对Web services消息的生命周期有一个很好的认识。通常,它看起来如下图所示:发送应用程序建立原始SOAP消息,这是一个包含消息头和消息体的XML消息。如果系统需要使用例如WS-Addressing或者WS-Security之类的WS*建议,这个消息就会在离开发送者之前经过额外的处理。一旦消息准备好了,他就会借助一个特别的传输器发送出去,例如HTTP,JMS等等。消息沿着它的路径发送到接收者,接收者是借助传输监听器接收消息的。(换句话说,如果应用程序没有运行HTTP监听器,那么它就将不会接收HTTP消息)再者,如果消息是需要使用WS-Security 或者其它建议的系统的一部分,那么为了检查凭证或者解密敏感信息,它需要一些额外的处理。最后,一个派发者决定这个消息发送到的指定应用程序(或者其它组件,例如Java方法),并且把它发送给这个组件。这个组件是一个完整的应用程序的一部分,这个应用程序是设计用来与这些来回发送的数据一起工作的。Axis2如何处理SOAP消息Axis2可以处理一次事务中的发送者和接收者双方的过程。从Axis2的角度看
文档评论(0)