• Axis2 -POJO


    POJO,Plain Old Java Object,简单Java物。


    通告Webservice

    1.书写Hello.java

    public class Hello {	
    	public String sayHello(){
    		return "hello";
    	}	
    	public String sayHelloToPerson(String name){		
    		if(name==null){
    			name = "nobody";
    		}
    		return "hello,"+name;
    	}
    }

    2.编译并放到工作文件夹

    编译Hello.java得到Hello.class,并放到<Tomcat安装文件夹>webappsaxis2WEB-INFpojo文件夹中(假设没有pojo文件夹,则建立该文件夹)。

    如今我们已经成功将Hello类公布成了WebService。

    在浏览器地址栏中输入例如以下的URL:http://localhost:8080/axis2/services/listServices ,得到下图结果。


    链接 http://localhost:8080/axis2/services/Hello?

    wsdl  得到wsdl。Web Services Description Language,Web 服务描写叙述语言。

    本质是xml。

    链接 http://localhost:8080/axis2/services/Hello?xsd     得到xsd。Xml Schema Definition。xml 模式定义,本质是xml。


    使用Webservice

    a ) http请求得到xml


    b) javaclient使用

    1.  wsdl2java得到stub.java

    wsdl2java命令能够在<Axis2安装文件夹>"bin文件夹中找到,有.sh 与 .bat 两个版本号。用于从wsdl得到client所须要的java文件。
    仅仅输入wsdl2java会看到帮助提示。以以下命令进行说明。
     d:Program Filesaxis2-1.6.2-binaxis2-1.6.2in>wsdl2java -uri http://localhost:8080/axis2/services/Hello?wsdl  -o d:
    -uri 制定了wsdl的来源。  
    -o 指定了 生成src存放位置。

    运行后生成了HelloStub.java与 HelloCallbackHandler.java。我们把它俩拉倒项目的src文件夹中。得到下图。



    手写client.java,此处起名StubClient.java。

    内容见下:

    import org.apache.ws.axis2.HelloStub;
    import org.apache.ws.axis2.HelloStub.SayHello;
    import org.apache.ws.axis2.HelloStub.SayHelloResponse;
    import org.apache.ws.axis2.HelloStub.SayHelloToPerson;
    
    public class StubClient
    {
        public static void main(String[] args) throws Exception  
        {
            HelloStub stub = new HelloStub();
            SayHello obj=new SayHello();
            SayHelloToPerson obj2=new SayHelloToPerson();
            obj2.setName("XiaoMing");
            SayHelloResponse response=stub.sayHello(obj);
            String str=response.get_return();
            System.out.println(str);
            System.out.println(stub.sayHelloToPerson(obj2).get_return());
        } 
    }
    /*
    hello
    hello,XiaoMing
     */

    它解释说,它已成功地朋友!

  • 相关阅读:
    ECharts
    JavaScript实现数组去重方法
    面试题1
    Vue中的8种组件通信方式
    渐进式web应用 (PWA)
    单元测试(Jest 和 Mocha)
    axios
    Vue Router
    Vuex
    hash 模式与 history 模式小记
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/4758104.html
Copyright © 2020-2023  润新知