最近在学习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 初探的更多相关文章

  1. java webservice AXIS

    1. eclipse axis 插件下载地址   http://archive.apache.org/dist/ws/axis2/tools/1_4_1/ 一个是代码生成插件   axis2-ecli ...

  2. (转)Java通过axis调用WebService

    转自:http://blog.csdn.net/wanglha/article/details/49679825 转载地址:http://www.linuxidc.com/Linux/2015-06/ ...

  3. Java WebService学习笔记 - Axis进阶(二)

    上一篇  Java WebService学习笔记 - Axis(一) 前一篇博文中简单介绍了Axis的使用方法,这篇将介绍一些Axis的一些高级特性 Axis中Handler的使用 Handler ...

  4. Java WebService学习笔记 - Axis(一)

    WebService 简介 实际开发中,很多系统都是基于历史遗留系统进行开发,有时,这些系统基于不同的语言,如C,C++,C#,java,PHP等等.为了实现历史系统的再利用,或向外部程序暴露调用接口 ...

  5. Java WebService 知识点汇总

    java webservice 获取传入IP axis.jar    servlet.jar MessageContext mMsgContext = MessageContext.getCurren ...

  6. Java Lambda表达式初探

    Java Lambda表达式初探 前言 本文受启发于Trisha Gee在JavaOne 2016的主题演讲Refactoring to Java 8. Java 8已经发行两年多,但很多人仍然在使用 ...

  7. Java WebService 开发简单实例

    Web Service 是一种新的web应用程序分支,他们是自包含.自描述.模块化的应用,可以发布.定位.通过web调用.Web Service可以执行从简单的请求到复杂商务处理的任何功能.一旦部署以 ...

  8. paip.myeclipse7 java webservice 最佳实践o228

    paip.myeclipse7  java webservice 最佳实践o228 java的ws实现方案:jax-ws>>xfire ws的测试工具  webservice测试调用工具W ...

  9. MAXIMO系统 java webservice 中PDA移动应用系统开发

    MAXIMO系统 java webservice 中PDA移动应用系统开发  平时经常用的wince PDA手持设备调用c#写的webservice, 当然PDA也可以调用java webservic ...

随机推荐

  1. [BJOI2017]树的难题 点分治 线段树

    题面 [BJOI2017]树的难题 题解 考虑点分治. 对于每个点,将所有边按照颜色排序. 那么只需要考虑如何合并2条链. 有2种情况. 合并路径的接口处2条路径颜色不同 合并路径的接口处2条路径颜色 ...

  2. Mysql索引机制B+Tree

    1.问题引入 有一个用户表,为了查询的效率,需要基于id去构建索引.构建索引我们需要考虑两个方面的问题,1个是查询的效率,1个是索引数据的存储问题.该表的记录需要支持百万.千万.甚至上亿的数据量,如果 ...

  3. 【BZOJ1072】排列(搜索)

    [BZOJ1072]排列(搜索) 题面 BZOJ 洛谷 题解 算下复杂度,如果用\(next\_permutation\) 那就是\(10!\times 10\times 15\),复杂度不太对 那好 ...

  4. kafka问题集(三)ISR缺失

    仅个人实践所得,若是有误,欢迎指出. 一.场景 kafka集群中某一节点(N-10)的CPU利用率大于整个集群的平均水平,且达到报警值.使用top命令后台查看时发现是kafka服务导致CPU利用率高. ...

  5. Tomcat性能调优及JVM内存工作原理

    Java性能优化方向:代码运算性能.内存回收.应用配置. 注:影响Java程序主要原因是垃圾回收,下面会重点介绍这方面 代码层优化:避免过多循环嵌套.调用和复杂逻辑.Tomcat调优主要内容如下:1. ...

  6. body内常用标签

    一.标签内使用的符号 # 特殊字符   空格 > 大于 < 小于 更多特殊字符:Here 二.P标签 作用:p标签表示段落 <body> <p>  吃葡萄不吐葡萄皮 ...

  7. NO.3day 网络基础

    网络基础 1.互联网协议 概念:通过互联网传输数据的标准. 功能:定义计算机如何接入internet,以及接入internet的计算机通信的标准. 2.OSI五层模型 应用层--传输层--网络层--数 ...

  8. clock()、time()、clock_gettime()和gettimeofday()函数的用法和区别

    1. clock_gettime( ) 提供了纳秒的精确度 int clock_gettime(clockid_t clk_id, struct timespect *tp); clockid_t c ...

  9. JavaScript setInterval 与 setTimeout 区别

    setInterval:一直循环调用函数,不会停止:需要用 clearInterval 去停止 setTimeout:只调用一次

  10. ABOUT ME/OI回忆录

    \(ABOUT\ ME/OI回忆录\) 博主是一个退役的老菜鸡啦,学\(OI\)两年没搞过什么很厉害的东西,也没有做过很多题目,但是还是挺喜欢\(OI\)的. 在退役之后可能不会经常上博客园了,估计也 ...