Java Axis2开发WebService与Silverlight调用教程

4星 · 超过85%的资源 需积分: 3 2 下载量 64 浏览量 更新于2024-09-12 收藏 511KB DOCX 举报
"这篇文章主要介绍了如何使用axis2开发WebService,并在Silverlight客户端进行调用的总结。作者在尝试使用Hessian发布服务时遇到问题,转而使用axis2,分享了整个过程。" 在Java世界中, Axis2是一个流行的Web服务框架,它允许开发者创建和部署Web服务。本教程首先讲解如何安装和配置Axis2,然后讲述如何开发Web服务,最后讨论在Silverlight环境中如何调用这些服务。 ### 安装和配置Axis2 1. **下载Axis2** - 可以从Apache官方网站下载最新版本的Axis2,例如axis2-1.6.0-bin.zip和axis2-1.6.0-war.zip。前一个包含所有必要的JAR文件,后者用于在Web服务器上部署服务。 2. **部署到Tomcat** - 将axis2.war文件复制到Tomcat的webapps目录下,然后启动Tomcat。 3. **验证安装** - 访问`http://localhost:8080/axis2/`,如果看到Axis2的欢迎界面,表明安装成功。 ### 配置环境 虽然在描述中提到了配置classpath,但这个步骤可能是可选的,特别是如果你已经在系统路径中设置了JAVA_HOME,并且能够正常运行Java程序。如果需要,可以在系统变量CLASSPATH中添加Axis2的bin目录。 ### 使用MyEclipse10开发Axis2 Web服务 1. **安装插件** - 下载并安装axis2-eclipse-codegen-wizard.zip和axis2-eclipse-service-archiver-wizard.zip,将解压后的JAR文件放入MyEclipse的dropins目录。 2. **创建Web服务** - 利用MyEclipse的Axis2插件,可以方便地创建和生成Web服务的代码。 3. **部署服务** - 通过MyEclipse的工具,将Web服务部署到Tomcat或其它支持的Web容器。 ### Silverlight客户端调用Axis2 Web服务 1. **生成代理类** - 在Silverlight项目中,使用工具(如WSDL.exe或Visual Studio的Add Service Reference功能)生成与Axis2服务对应的代理类。 2. **编写调用代码** - 使用生成的代理类,通过异步方法调用Web服务,处理返回的数据。 3. **处理跨域问题** - Silverlight有跨域限制,可能需要在Axis2服务端配置CORS(跨源资源共享)或者使用JSONP(JSON with Padding)来允许Silverlight进行跨域通信。 ### 关键技术点 - **SOAP协议** - Axis2基于SOAP(简单对象访问协议)标准,它是Web服务交互的常用协议,提供消息交换的规范。 - **WSDL** - Web服务描述语言,定义了服务接口、消息格式以及如何调用服务,是生成代理类的基础。 - **Silverlight的异步编程模型** - 调用Web服务通常采用异步方式,以避免阻塞UI线程。 - **CORS配置** - 为了使Silverlight能跨域调用Web服务,服务端需要配置允许特定来源的请求。 总结,这篇文章除了介绍axis2的安装和使用,还涵盖了在Silverlight环境中调用Web服务的基本流程,对于初学者来说,是一份实用的参考资料。通过学习,开发者可以了解如何在Java和Silverlight之间建立通信桥梁,实现分布式系统的组件交互。