`
kaminlee
  • 浏览: 264168 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

迅速了解Web Service的开发

阅读更多
一、Axis环境的安装

    1、安装环境 J2SE SDK 1.4,Tomcat 5.0,eclipse 3.2。
    2、到 http://xml.apache.org 网站下载Axis安装包。
    3、将Axis相关包文件放在WEB-INF\lib目录下。
    4、Axis可选的包:activation.jar; mail.jar; xmlsec-1.4.Beta1.jar拷贝到WEB-INF目录下,生成客户端时候需要使用。

    Axis支持三种web service的部署和开发,分别为:

    1、Dynamic Invocation Interface (DII)
    2、Dynamic Proxy方式
    3、Stubs方式

    前两种方式我就不介绍了,同事告诉我他们自己都不使用前两种方式,他们建议我们使用Stubs方式,因此我就主要就介绍一下第三种方式。注意,我自己的Java源代码是放在D:\workspace\test\目录下,Axis相关包文件放在D:\workspace\test\WEB-INF目录下。

    二、编写wsdd发布web服务,编写stub client访问web服务

    1、编写服务端程序server,SayHello.java,编译server.SayHello.java
package server;
public class SayHello
{
public String getName(String name)
{
return "hello "+name;
}
} 

2、编写wsdd文件

    deploy.wsdd文件内容如下:
<deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<service name="SayHello" provider="java:RPC">
<parameter name="className" value="server.SayHello.getName"/>
<parameter name="allowedMethods" value="*"/>
</service>
</deployment> 


引用

set Axis_Lib=D:\workspace\test\WEB-INF\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Axis_Servlet=http://localhost:8080/test/servlet/AxisServlet
%Java_Cmd% org.apache.axis.client.AdminClient -l%Axis_Servlet% deploy.wsdd


执行这个批处理文件,这时候,如果提示成功的话,访问http://localhost:8080/test/services 就会显示服务列表。

    4、生成客户端client stub文件

    在浏览器上访问服务器端的服务,可以下载到WSDL文件,通过Axis的相关工具,可以自动从WSDL文件中生成Web Service的客户端代码。

    编写一个WSDL2Java.bat文件,其内容如下:
引用

set Axis_Lib=D:\workspace\test\WEB-INF\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Output_Path=D:\workspace\test\src
set Package=server.SayHello
%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package% SayHello.wsdl


执行这个批处理文件就可以生成client stub.

    生成的stub client文件列表为:SayHello.java,SayHelloService.java,SayHelloServiceLocator.java,SayHelloSoapBindingStub.java .

    5、编写客户端程序,编译并执行

    下面是一段junit测试客户端代码。
import java.net.URL;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
public class TestWSClient extends TestCase {
public TestWSClient(String string) {
super(string);
}
public void SayHelloClient() throws Exception {
SayHelloService service = new SayHelloServiceLocator();
SayHello_PortType client = service.getSayHello() ;
String retValue = client.getName("clientname");
System.out.println(retValue);
}
public static Test suite() {
TestSuite suite = new TestSuite();
suite.addTest(new TestWSClient("SayHelloClient"));
return suite;
}
} 


至此,整个服务端和客户端的WebService框架代码就开发完了,剩下的就在你的代码里加入业务逻辑了。
分享到:
评论

相关推荐

    T100 Web Service 接口开发v1.5版.rar

    开发者可以从中获取到接口的API定义、调用方法、参数说明等关键信息,帮助他们快速理解和使用T100 Web Service。 “T100 Web Service 開發_20150715.ppt”可能是演示文稿或培训材料,详细介绍了接口的开发流程和...

    Web service开发指南

    **Web服务开发指南** 在IT领域,Web服务是一种标准化的通信机制,允许不同的应用程序之间进行交互,无论它们是用何种编程语言或运行在哪个操作系统上。本指南将深入讲解Web服务的开发,主要关注三个流行的Java框架...

    MAPGIS Web Service开发手册

    ### MAPGIS Web Service开发手册知识点总结 ...不仅介绍了Web Service的基本概念和技术基础,还提供了具体的.NET和J2EE客户端开发实践案例,有助于开发者快速掌握MAPGIS 7.x Web Service开发的关键技术和实践技巧。

    Web Service编程:用C#开发网络服务

    ASMX允许开发者快速创建简单的Web Service,而WCF则支持多种传输协议、消息格式和绑定方式,提供更高的灵活性和安全性。 1. **创建Web Service**: 使用C#创建Web Service,首先需要创建一个新的ASP.NET Web ...

    Axis开发Web Service实例

    在探讨如何使用Apache Axis来开发Web Service之前,我们首先需要了解一些基本概念。 **Web Service**是一种标准的技术框架,用于实现不同平台之间的应用通信。它使用XML作为数据交换格式,并通过HTTP进行传输。...

    pb11 开发 web service

    本文将深入解析如何运用PowerBuilder 11(简称pb11)进行Web Service的开发与调用,揭示pb11在Web Service开发领域的应用策略。 ### Web Service简介 Web Service是一种跨平台的、基于网络的应用组件技术,它允许...

    《实战Delphi6/Kylix2/SOAP/Web Service程序设计篇》(

    4. **Web Service开发**:包括如何定义、发布和调用Web Service,如使用WSDL(Web Service Description Language)和UDDI(Universal Description, Discovery, and Integration)。 5. **实例分析**:书中将提供...

    web service入门教程ppt

    这个教程,由MCT(微软认证讲师)和MVP(微软最有价值专家)杨永智编撰,是专为微软校园大使设计的课件,旨在帮助初学者快速理解并掌握Web服务的基本概念和开发技术。 1. **Web服务架构** 1-WS--WebService-Web ...

    Apache CXF开发Web Service 开发Web Service之Kick Start

    "Apache CXF开发Web Service - 开发Web Service之Kick Start"的主题意味着我们将深入探讨如何快速入门使用CXF进行Web服务开发。 首先,我们来看一下CXF的主要功能。CXF支持多种Web服务规范,如SOAP、RESTful(基于...

    如何使用Eclipse开发Web Service

    【如何使用Eclipse开发Web Service】 在开发Web Service时,Eclipse作为一个强大的集成开发环境(IDE),提供了便捷的工具和插件支持。本篇将详细阐述如何在Eclipse中进行Web Service的开发。 1. **准备工作** ...

    Java Web Service总结

    即时发布使得开发者可以快速地部署和测试 Web Service。 2.2.2 定制发布(WSDD) 定制发布是指根据具体的需求和环境来定制 Web Service 的部署过程。定制发布使得开发者可以根据具体的需求和环境来部署和配置 Web ...

    xfire开发Web Service接口详解

    在理解XFire之前,我们需要了解Web Service的基本概念。Web Service是一种通过WSDL(Web服务描述语言)定义,使用SOAP(Simple Object Access Protocol)作为消息交换格式,通过UDDI(Universal Description, ...

    Web Service开发指南.pdf

    在本教程“Web Service开发指南”中,我们将深入探讨Web服务的开发技术,特别是关注三种流行的Java Web Service框架:AXIS、XFire和CXF。 1. Web服务基础: - SOAP(简单对象访问协议):Web服务的核心通信协议,...

    JAX-RS方式的RESTful Web Service开发

    **JAX-RS方式的RESTful Web Service开发详解** RESTful Web Service是一种基于HTTP协议的、无状态的、客户端-服务器交互模式,它利用HTTP方法(GET、POST、PUT、DELETE等)来实现对资源的操作。JAX-RS是Java API ...

    web service xfire 开发包及api

    使用Xfire Web Service,开发者可能需要参考WSDL文件来了解如何正确调用服务。 3. **XML(eXtensible Markup Language)**:XML用于构造Web服务的数据交换格式,Xfire Web Service中的数据通常会被编码为XML文档,...

Global site tag (gtag.js) - Google Analytics