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 ,得到下图结果。

链接

wsdl" target="_self">
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
*/

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

Axis2 -POJO的更多相关文章

  1. 2.1 Apache Axis2 快速学习手册之 POJO 构建Web Service

    1. 准备:创建一个Maven Web App 项目 这里让我们使用Maven 模板创建一个Web App 项目 1. New------> Maven Project 2. 使用默认配置,点击 ...

  2. WebService之Axis2(1):用POJO实现0配置的WebService

    Axis2是一套崭新的WebService引擎,该版本是对Axis1.x重新设计的产物.Axis2不仅支持SOAP1.1和SOAP1.2,还集成了非常流行的REST WebService,同时还支持S ...

  3. axis2开发webservice入门到精通

    1,准备工作: 首先我们要下载:axis2-1.4.1-war(发布webservice),axis2-1.4.1-bin.zip(webservice调用使用的各种包). 下载好了,把axis2-1 ...

  4. Axis2测试webservice server以及client

    一.环境搭建 下载axis2-1.6.2-war.zip/axis2-1.6.2-bin.zip等. 参考axis2-1.6.2-war\README.txt以及axis2-1.6.2-war\axi ...

  5. webservice的Axis2入门教程java版

    本文转自百度文库 Axis2是一套崭新的WebService引擎,该版本是对Axis1.x重新设计的产物.Axis2不仅支持SOAP1.1和SOAP1.2,还集成了非常流行的REST WebServi ...

  6. axis2 webservice 发布、调用与项目集成

    发布 1.在apache官网下载axis2包,下载Binary Distribution和War Distribution两个zip. 2.将war放入tomcat webapps下部署.并输入 ht ...

  7. jboss\server\default\.\tmp 拒绝访问 axis2

    下载axis2.war包. 下载jboss-4.2.3.GA.zip和jboss-5.0.1.GA.zip两个包并解压. 配置JDK后要配置JBOSS_HOME的环境变量,在Path中配置%JBOSS ...

  8. WebService之Axis2(4):二进制文件传输

    在<WebService大讲堂之Axis2(2):复合类型数据的传递>中讲过,如果要传递二进制文件(如图像.音频文件等),可以使用byte[]作为数据类型进行传递,然后客户端使用RPC方式 ...

  9. axis2 部署webservice

    1.下载axis2-1.6.4-war.zip 2.将axis2.war防止webapps下. 3.http://localhost:8080/axis2/ 4.myeclipse创建web serv ...

随机推荐

  1. Wix打包系列(七) 添加系统必备组件的安装程序

    原文:Wix打包系列(七) 添加系统必备组件的安装程序 我们知道在vs的打包工程中添加系统必备组件是一件很容易的事情,那么在wix中如何检测系统必备组件并在安装过程中安装这些组件.这里以.Net Fr ...

  2. Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案

    原文:Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案 如果你是用Visual Studio自带的打包项目打包了一个I ...

  3. A Game of Thrones(11) - Daenerys

    Daenerys Targaryen wed Khal Drogo with fear and barbaric([bɑː'bærɪk]野蛮的,粗野的) splendor(光彩:壮丽) in a fi ...

  4. 10、ERP设计之系统基础管理(BS)- 平台化设计

    ShareERP 2013-09-03 ERP业务平台化是每个软件提供商必须要进行的趋势,传统定制化路线已死,不能走定制化的老路了.以往最大问的题是不能累积和沉淀技术及提升项目业务管理能力,其次是管理 ...

  5. HDU 4916 树分治

    Mart Master II Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  6. Groovy常见语法汇总

    一.groovy是什么 简单地说,Groovy 是下一代的java语言,跟java一样,它也运行在 JVM 中. 作为跑在JVM中的另一种语言,groovy语法与 Java 语言的语法很相似.同时,G ...

  7. mongoDB 批量更改数据,某个字段值等于另一个字段值

    由于mongodb数据库类似js的写法,所以即使数据库中新的列不存在也会自动创建 db.hospital.find().forEach( function(item){ db.hospital.upd ...

  8. Jetty 9.3庆祝20周年生日快乐,并添加HTTP/2支持

    本文来源于我在InfoQ中文站翻译的文章,原文地址是:http://www.infoq.com/cn/news/2015/06/Building-Distributed-Systems 今年6月12日 ...

  9. Android平台调用Web Service:螺纹的引入

    连接文本 剩下的问题 MainActivity的onCreate方法中假设没有有这段代码: // 强制在UI线程中操作 StrictMode.setThreadPolicy(new StrictMod ...

  10. Python的包管理

    0.Python的包管理 在刚开始学习Python的时候比较头疼各种包的管理,后来搜到一些Python的包管理工具,比如setuptools, easy_install, pip, distribut ...