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 ...
随机推荐
- 洛谷 P4244 [SHOI2008]仙人掌图 II 解题报告
P4244 [SHOI2008]仙人掌图 II 题目背景 题目这个II是和SHOI2006的仙人掌图区分的,bzoj没有. 但是实际上还是和bzoj1023是一个题目的. 题目描述 如果某个无向连通图 ...
- 关于Powershell对抗安全软件(转)
Windows PowerShell的强大,并且内置,在渗透过程中,也让渗透变得更加有趣.而安全软件的对抗查杀也逐渐开始针对powershell的一切行为.在https://technet.micro ...
- Spring小节
Spring的总结 Spring的核心: 1. Spring的两大核心: 1. IOC: 控制反转,将创建(实例化)对象的权利交给Spring容器去进行管理. 2. AOP: 面向切面编程(将切面织入 ...
- Java之线程池和Lambda表达式
线程池和lambda表达式 学习线程池和lambda表达式的理解 补充一个知识点(单例设计模式) 在多线程中,我们只需要一个任务类,为了防止创建多个任务类,这个时候就需要用到单例模式,单例模式有两种设 ...
- JsonTools
public class JsonTools { /// <summary> /// Generate Json string from the object /// </summa ...
- [USACO18OPEN]Out of Sorts P 冒泡排序理解之二
题目描述 Bessie把快速排序和冒泡排序混在了一起 给一个伪快排的代码: 冒泡: bubble_sort_pass (A) { to length(A)- ], swap A[i] and A[i+ ...
- hackerrank答案
regex: https://github.com/taiyang-li/hackerrank/tree/master/hackerrank/regex-exercise awk: https://g ...
- FastDFS部署
环境: CentOS 7 FastDFS 5.05 Nginx 1.10 fastdfs-nginx-module_v1.16 libfastcommon-1.0.7 libevent-2.0.21- ...
- python 中的multiprocessing 模块
multiprocessing.Pipe([duplex]) 返回2个连接对象(conn1, conn2),代表管道的两端,默认是双向通信.如果duplex=False,conn1只能用来接收消息,c ...
- python中的文件操作
文件操作时,有'r','w','a'不同的操作类型,其中'r'只能读文件,seek(),tell()函数定位读的起始地方.'w'会清空文件内容然后写文件,seek(),tell()函数定位写的起始地方 ...