zoukankan      html  css  js  c++  java
  • axis1.4开发webservice客户端(快速入门)-基于jdk1.4

    写在前面:

      对于客户端,服务端开发好了以后,客户端只需要调用就可以了。这里我们讲的是,根据服务的访问地址,来生成客户端所需要用到的代码(听说有几种调用方式,但是用到最常见的就是stub方式,貌似我说的这种方式就是的,具体没深入研究。哈哈,先学会用再说)

    1.浏览器输入服务的访问地址,如:http://localhost:8080/test_axis3_stub/services/sayHello?wsdl,这一步是为了确保服务是可以正常访问的。

    2.编写一个.bat文件,用来生成java客户端代码。文件名字可以随便取,内容如下:

    set Axis_Lib=D:myEclipse10_WSjob	est_axis3_stubWebRootWEB-INFlib
     
    set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
     
    set Output_Path=D:my
     
    set Package=edu.hue.stub
    
    %Java_Cmd% org.apache.axis.wsdl.WSDL2Java -o%Output_Path% -p%Package% 
    http://localhost:8080/test_axis3_stub/services/sayHello?wsdl

      这里直接将上面的复制粘贴到你的文件下,然后稍微做下解释,Axis_Lib:这个是你的axis.jar的存放路径,一般这个路径为了方便,我们直接写你项目的所在路径就好了,一直到lib下,因为你的jar包是放在这里的嘛;Output_Path:就是生成java客户端代码的路径,这里你自己指定就好了,例如D:my,前提是你d盘下有my这个文件夹;最后将上面的那个访问链接地址换成你想要访问的服务的链接就好,这里我的是http://localhost:8080/test_axis3_stub/services/sayHello?wsdl

      到这就可以了,然后去双击运行这个.bat文件就可以在D:my下面生成java客户端代码了(注意你的服务端此时应该是运行的),哦,对了,有可能你跟我一样是小白,连.bat文件怎么创建都不知道,下面我就简单说说,你创建一个记事本文件,将内容写好后,最后另存为名字为my.bat,注意这里要改变保存类型,为所有文件。之后保存就可以了。就成了.bat文件啦。

    3.将生成的java客户端代码,复制粘贴到你的项目里面。

    4.创建一个客户端类,内容如下:

    package edu.hue.client;
    
    import java.rmi.RemoteException;
    
    import edu.hue.stub.SayHelloImpl;
    import edu.hue.stub.SayHelloImplService;
    import edu.hue.stub.SayHelloImplServiceLocator;
    
    public class MyClient {
        public static void main(String[] args) throws Exception {
            //获取服务集合
            SayHelloImplService service = new SayHelloImplServiceLocator();
            //获得服务
            SayHelloImpl client = service.getsayHello();
            //调用服务的方法 传递参数
            String result = client.say("臭小蚊子");
            System.out.println(result);
        }
    }

     这里的获取服务集合,是根据你刚生成的java类来new的,注意观察,一般这个集合是以Service结尾的,直接new这个类就好了;获得服务,直接写.的时候,就会出来提示,你看提示中哪一个是符合你要调用的服务类的就选择那个就可以了;后面的调用服务的方法,也是写client.之后,根据提示就可以判断你要调用的是哪个方法了。

    5.右键,运行。成功啦~~~~

    这里都是说的如何快速用asix1.4来开发一个webservice。涉及到更复杂的参数传递什么的,比如说传递的参数是一个bean,就需要自己下去研究啦。

     交流群:527038646  嘻嘻嘻

     

  • 相关阅读:
    【GitHub】在Mac上配置/使用Github
    【IOS开发】《多线程编程指南》笔记
    【设计模式】二、观察者模式
    php 接受json数据时有转义字符处理办法
    highcharts 常用配置
    apache虚拟主机配置
    php,phpexcel插件导出excel使用
    json_decode转换json数据为数组出现的问题!
    redis 主从服务器
    linux 下安装redis
  • 原文地址:https://www.cnblogs.com/eleven258/p/7079722.html
Copyright © 2011-2022 走看看