Java WebService Axis 初探
最近在学习WebService
开始了:
一:服务端的编写与发布
1. 工具准备: java的开发环境(这里就不多说了)。
axis2官网上下载最新的就可以了(我这里用的是axis2-1.4.1-war)把文件解压,然后把axis2.war文件放到apache-tomcat-7.0.26\webapps目录下。并启动 tomcat,启动完成后可以在webapps目录中看到axis2这个目录;并在浏览器中输入:http://localhost:8080/axis2/ 地址后显示如下页面说明成功了
axis2-1.6.2-bin.zip(解压)。写客户端要用。
axis2-eclipse-codegen-plugin-1.6.2(生成客户端代码工具):解压文件把jar包放到eclipse3.7.2\plugins目录。
axis2-eclipse-service-plugin-1.6.2(服务端代码打包工具):同上
2. 建一个 java Project工程并建一个类命名为WebService
public class WebService {
public String Hello(String str) {
return str + " Hello ";
}
}
然后生成aar服务文件:菜单栏File - >Axis2 Wizards ->Axis2 Service Archiver如图
NEXT
NEXT
NEXT
例如webservice需要连接数据的话那么就需要把连接数据库的jar包添加进去,先browse->add即可;有次打aar包的时候没有加上jar包,client死活调不成功。就是这个原因
NEXT
自动创建此webService的xml文件 NEXT
next
Finish成功后到桌面上去找找是不是有Serverce.aar文件; 可以解压出来看看,有新的发现哦!
3. WebService服务发布:把生成好的Serverce.aar文件放到apache-tomcat-7.0.26\webapps\axis2\WEB-INF\services目录下然后重新启动Tomcat。再在浏览器中输入http://localhost:8080/axis2/ 地址然后点击页面中的Services链接。后如图
此Hello就是刚生成的服务名了,再点Service连接,记住此URLhttp://localhost:8080/axis2/services/Service?wsdl 写客户端的时候要用的。
此刻WebService服务的编写和发布已经完成了。
二:客户端的编写
1. 建一个java Project工程命名为WebServiceClient
2. 添加Jar包;把axis2-1.6.2-bin.zip解压的lib目录下的所有jar包都添加到此工程下去
3. 生成客户端服务引用File ->New->Axis2 Code Genertor如下图
NEXT
NEXT
NEXT-->NEXT
Finish。 成功后刷新一下客户锻的工程,然后建一个测试类。命名为Test
import java.rmi.RemoteException;
import org.apache.ws.axis2.Hello;
import org.apache.ws.axis2.HelloResponse;
import org.apache.ws.axis2.Service;
import org.apache.ws.axis2.ServiceStub; public class Test { /**
* @param args
* @throws RemoteException
*/
public static void main(String[] args) throws RemoteException {
// TODO Auto-generated method stub
Service server = new ServiceStub();
Hello hello = new Hello();
//new一个调用sayHello方法需要的参数SayHello,并且设置name
hello.setStr("Siuon");
//调用web服务
HelloResponse sayHelloResponse = server.hello(hello);
//拿到返回结果
System.out.println(sayHelloResponse.get_return());
} }
运行后如下图则成功了。
Java WebService Axis 初探的更多相关文章
- java webservice AXIS
1. eclipse axis 插件下载地址 http://archive.apache.org/dist/ws/axis2/tools/1_4_1/ 一个是代码生成插件 axis2-ecli ...
- (转)Java通过axis调用WebService
转自:http://blog.csdn.net/wanglha/article/details/49679825 转载地址:http://www.linuxidc.com/Linux/2015-06/ ...
- Java WebService学习笔记 - Axis进阶(二)
上一篇 Java WebService学习笔记 - Axis(一) 前一篇博文中简单介绍了Axis的使用方法,这篇将介绍一些Axis的一些高级特性 Axis中Handler的使用 Handler ...
- Java WebService学习笔记 - Axis(一)
WebService 简介 实际开发中,很多系统都是基于历史遗留系统进行开发,有时,这些系统基于不同的语言,如C,C++,C#,java,PHP等等.为了实现历史系统的再利用,或向外部程序暴露调用接口 ...
- Java WebService 知识点汇总
java webservice 获取传入IP axis.jar servlet.jar MessageContext mMsgContext = MessageContext.getCurren ...
- Java Lambda表达式初探
Java Lambda表达式初探 前言 本文受启发于Trisha Gee在JavaOne 2016的主题演讲Refactoring to Java 8. Java 8已经发行两年多,但很多人仍然在使用 ...
- Java WebService 开发简单实例
Web Service 是一种新的web应用程序分支,他们是自包含.自描述.模块化的应用,可以发布.定位.通过web调用.Web Service可以执行从简单的请求到复杂商务处理的任何功能.一旦部署以 ...
- paip.myeclipse7 java webservice 最佳实践o228
paip.myeclipse7 java webservice 最佳实践o228 java的ws实现方案:jax-ws>>xfire ws的测试工具 webservice测试调用工具W ...
- MAXIMO系统 java webservice 中PDA移动应用系统开发
MAXIMO系统 java webservice 中PDA移动应用系统开发 平时经常用的wince PDA手持设备调用c#写的webservice, 当然PDA也可以调用java webservic ...
随机推荐
- BZOJ4036 [HAOI2015]按位或 【minmax容斥 + 期望 + FWT】
题目链接 BZOJ4036 题解 好套路的题啊,,, 我们要求的,实际上是一个集合\(n\)个\(1\)中最晚出现的\(1\)的期望时间 显然\(minmax\)容斥 \[E(max\{S\}) = ...
- 【bzoj2002】 Hnoi2010—Bounce 弹飞绵羊
http://www.lydsy.com/JudgeOnline/problem.php?id=2002 (题目链接) 题意 数轴上${n}$个点,每个点有一个权值${a_i}$,如果到达这个点,接下 ...
- docker attach 和 docker exec
docker attach docker attach -- Attach to a running container. 常用选项: --sig-proxy=true:Proxy all recei ...
- Java的基本类型
基本数据类型的加载和存储 极客时间深入理解Java虚拟机读后感,有错误还请指正 虚拟机中的Boolean类型 在Java语言规范中,boolean类型的值只有两种可能,那就是"true&qu ...
- bzoj 1212: [HNOI2004]L语言 AC自动机+状压
为什么这道题网上所有题解写的都是N*Len的trie树的暴力啊,4E的复杂度... 为什么暴力还跑这么快啊TAT.. 有一个O(Len)的做法就是先把AC自动机建出来,因为每个字典串的长度很小,所以我 ...
- 4:JAVA UUID 生成
GUID是一个128位长的数字,一般用16进制表示.算法的核心思想是结合机器的网卡.当地时间.一个随即数来生成GUID.从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义 ...
- jQuery EasyUI 下拉菜单获取日期,最高年份为当前年份,最低年份为当前年份向前推10年
http://blog.csdn.net/wangjingjing1014/article/details/16885341 <head><meta http-equiv=" ...
- 把矩阵分成n*m个块,从任意一个块出发,问是否可以一笔画遍历矩阵中所有的块
- JAVA 加密算法初探DES&AES
开发项目中需要将重要数据缓存在本地以便在离线是读取,如果不对数据进行处理,很容易造成损失.所以,我们一般对此类数据进行加密处理.这里,主要介绍两种简单的加密算法:DES&AES. 先简单介绍一 ...
- HDU 6040 stl
Hints of sd0061 Time Limit: 5000/2500 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others ...