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安装文件夹>\webapps\axis2\WEB-INF\pojo\文件夹中(假设没有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 Files\axis2-1.6.2-bin\axis2-1.6.2\bin>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
 */









相关文章
|
4月前
【gloomyfish】Box zoom on Category Plot in JFreeChart
【gloomyfish】Box zoom on Category Plot in JFreeChart
23 0
|
5月前
GEE错误——Tile error: Arrays must have same lengths on all axes but the cat axis
GEE错误——Tile error: Arrays must have same lengths on all axes but the cat axis
52 1
|
11月前
|
前端开发 Java 数据库
DTO、TO、VO、PO、DO、BO、AO、DAO、POJO
DTO、TO、VO、PO、DO、BO、AO、DAO、POJO
89 0
|
12月前
86Echarts - 散点图(Scatter on Single Axis)
86Echarts - 散点图(Scatter on Single Axis)
23 0
|
设计模式 存储 开发框架
Java各种对象(PO,BO,VO,DTO,POJO,DAO,Entity,JavaBean,JavaBeans)的区分
Java各种对象(PO,BO,VO,DTO,POJO,DAO,Entity,JavaBean,JavaBeans)的区分
525 0
|
XML JavaScript Java
Axis调用Webservice添加SoupHeader
Axis调用Webservice添加SoupHeader
181 0
Axis调用Webservice添加SoupHeader
|
SQL 分布式计算 关系型数据库
Dataset 和DataFrame 的区别_Row 对象 | 学习笔记
快速学习 Dataset 和DataFrame 的区别_Row 对象
260 0
Dataset 和DataFrame 的区别_Row 对象 | 学习笔记
|
Java 应用服务中间件 Apache
Apache Axis2
Apache Axis2 是Axis的后续版本,是新一代的SOAP引擎。 Axis2 是对 Axis 进行了彻底的重写的一个新项目了,它使用了新的模块化架构,更方便于功能性的扩展等等 Axis2是一套崭新的WebService引擎,该版本是对Axis1.x重新设计的产物。
1057 0
成功解决numpy.core._internal.AxisError: axis -1 is out of bounds for array of dimension 0
成功解决numpy.core._internal.AxisError: axis -1 is out of bounds for array of dimension 0