`
CanBeatle
  • 浏览: 169230 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Axis开发WebService服务(DII方式)

阅读更多
   在 Axis安装中,我们安装了Axis,现在我们开始Axis开发 。
   Axis支持三种web service的部署和开发,分别为:
   1.Dynamic Invocation Interface ( DII)
   2.Stubs方式
   3.Dynamic Proxy方式
【第一种方法】 Dynamic Invocation Interface(DII)方式
第一步:编写服务器端程序FruitQuoteService.java
 import java.lang.*;
 public class FruitQuoteService
 {
  public int getQuote(String category)
  {
   int quote = 0;
   String apple = "apple";
   String orange = "orange";
   if(category.equals(apple))
   {
    quote = 110;
   }
   else if(category.equals(orange)) 
   {
   quote = 155;
   }
   return quote;
  }
}


第二步:将源码拷贝到AXIS_HOME下面并重命名为FruitQuoteService.jws

第三步:访问http://localhost:8080/axis/FruitQuoteService.jws?wsdl,页面显示自动生成的WSDL
接下来编写客户端代码测试
import org.apache.axis.client.*;
import javax.xml.namespace.QName;
import javax.xml.rpc.ServiceException;
import java.net.MalformedURLException;
import java.rmi.RemoteException;
public class client
{
  public static void main(String[] args) 
  {
   if(args.length <= 0)
   {
    System.out.println("miss fruit name!");
   }
   else
   {
     try
     {
      String endpoint
           = "http://localhost:8080/axis/FruitQuoteService.jws";
      Service service = new Service();
      Call call = null;
      call = (Call) service.createCall();
      call.setOperationName(new QName(endpoint, "getQuote"));
      call.setTargetEndpointAddress(new java.net.URL(endpoint));
      int ret =Integer.parseInt(("" + call.invoke( new Object[]
                                {args[0]} ))); 
      System.out.println("return quote is : " + ret);
     } 
     catch (Exception ex)
     {
      ex.printStackTrace();
     }
   }
 }
}


编译:javac client.java
运行:java client orange
输出:return quote is :155
OK,搞定!
分享到:
评论

相关推荐

    Axis开发WebService实例.pdf

    #### 二、使用DII(Dynamic Invocation Interface)方式开发Web服务 - **概念介绍**:DII是一种调用远程Web服务的方法,允许动态生成调用代码。这种方式不需要预先知道Web服务的具体实现细节,只需知道服务的操作名...

    WebService Axis 搭建开发

    【WebService Axis 搭建开发】是关于使用Apache Axis库创建和部署Web服务的教程。Apache Axis是一个开源项目,主要用于简化Java应用程序与Web服务之间的交互。在这个过程中,我们将重点介绍如何利用Axis进行快速开发...

    Java开发WebService实例

    使用Axis开发WebService有两种主要方式:DII(Dynamic Invocation Interface)和Stubs。其中,DII方式更为灵活,适用于动态生成WebService接口的情况。 1. **编写Java类**:创建一个简单的Java类,例如`HelloWorld`...

    利用Axis构建Webservice

    ### 利用Axis构建Webservice的关键知识点 ...这种方式不仅简化了Webservice的开发流程,还提高了开发效率。对于初学者来说,这是一个非常好的实践案例,可以帮助理解和掌握Webservice的基本概念和技术细节。

    Axis开发Web Service实例

    Axis支持三种方式开发Web服务: 1. **DII(Dynamic Invocation Interface)**:动态调用接口,通过Java类直接暴露为Web服务。 2. **Stubs方式**:通过生成的服务存根(Stub)来实现。 3. **Dynamic Proxy方式**:...

    用Java_开发_WebService_Axis简单实例

    **2.1 DynamicInvocationInterface (DII) 开发方式** DII是一种动态调用接口,允许客户端动态调用服务器端的服务方法。 **步骤1:编写服务端代码** ```java public class SayHello { public String say(String ...

    axis实现webservice

    DII(Dynamic Invocation Interface)方式的WebService - **编写服务端代码**:创建一个简单的Java类`HelloWorld.java`,实现`getName`方法,返回一个问候语。 ```java public class HelloWorld { public String ...

    WebService开发

    Apache Axis支持多种WebService部署和开发方式,包括: 1. **Dynamic Invocation Interface (DII)**:动态调用接口。 2. **Dynamic Proxy 方式**:动态代理方式。 3. **Stubs 方式**:该方式最常用,也是本文重点...

    javawebservice例子.pdf

    接下来,我们将分别演示DII和Dynamic Proxy两种方式创建Web服务的例子: **DII例子**: 1. 创建一个名为`HelloClient`的服务端类,包含一个方法`getName`。 2. 将`HelloClient`的源码复制到Axis的工作目录下,并...

    webservice资料

    Stubs方式是最传统的Web服务客户端开发方式,它会自动生成客户端代码(Stub)和服务器端代码(Skeleton)。这种方式通常适用于需要类型安全性和编译时检查的情况,但在本示例中并未涉及。 总结起来,开发Web服务的...

    webservice简单实例

    Apache Axis2 是一款流行的 WebService 开发平台,它提供了一种高效且易于使用的框架来构建 WebService。Axis2 的核心是一个 SOAP 处理器,可以用于开发客户端和服务端应用程序。 - **特点:** - 内存占用小:相比...

    CXF框架开发WebService概述及代码

    在Java领域,虽然有多种框架可用于开发WebService,如AXIS、XFire等,但本篇重点讨论的是CXF框架。 #### Apache CXF框架起源与发展 Apache CXF项目源自ObjectWeb Celtix与CodeHaus XFire两大开源项目的合并。...

    介绍AXIS的文档

    通过本文的学习,我们了解了 Axis 1.x 系列的基本概念和使用方法,包括如何搭建 Axis 的开发环境、如何创建简单的 Web 服务以及如何编写客户端进行调用。Axis 作为一款成熟的 Web 服务框架,不仅提供了丰富的功能,...

    axis配置(axis详细配置)

    通常情况下,DII方式适用于不经常变化的服务,而Stubs方式则适用于需要频繁更新的服务。 #### 四、总结 通过本文的介绍,我们不仅了解了如何在Eclipse环境下配置和部署Axis环境,还学习了如何创建和调用一个简单的...

    《Axis实例与分析详解》

    **示例1:DII方式的WebService** 1. **创建服务类**:编写一个简单的服务类`HelloWorld.java`,提供一个名为`getName`的方法,该方法接收一个字符串参数`name`并返回包含问候语的字符串。 ```java public class ...

    webservice 简单配置

    首先介绍了安装配置Axis的基本步骤,接着重点讲解了使用 **DII** 方式发布WebService的具体流程。通过以上步骤,你可以轻松地在自己的系统中集成WebService功能,实现与外部系统的数据交换和服务交互。 通过本文档...

    webservice

    在本文中,我们将重点讨论Web Service的重要概念,特别是与 Axis 框架相关的开发方法,包括Dynamic Invocation Interface (DII) 和 Dynamic Proxy 方式。 ### 1. Web Service基本概念 Web Service通过使用XML(可...

Global site tag (gtag.js) - Google Analytics