WebService学习之旅(五)基于Apache Axis2发布第一个WebService
上篇博文介绍了如何將axis2 webservice引擎安装到Web容器中,本节开始介绍如何基于apache axis2发布第一个简单的WebService。
一、WebService服务端发布步骤
1.打开Eclipse工程,新建一个Java Project,例如笔者工程名为axis2-recipe01。
2.编写Web服务接口及实现类
HelloWorld.java
package com.csdn.ws.axis2.recipe01;
public interface HelloWorld {
String sayHello(String name);
}
HelloWorldImpl.java
package com.csdn.ws.axis2.recipe01;
public class HelloWorldImpl implements HelloWorld {
@Override
public String sayHello(String name) {
return "hello," + name;
}
}
大家可能已经注意到了,前面我们使用jax-ws发布webservice时,web服务接口和实现类需要使用注解@WebService和@WebMethod修饰,但是使用axis2引擎时并不需要。
2.在工程根路径下,新建一个META-INF目录,然后在该目录下新建一个services.xml文件,注意名称不能改变。
3.打开services.xml,添加webservice的描述信息,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<service name="HelloWorld">
<description>
HelloWorld Service Example
</description>
<parameter name="ServiceClass">
com.csdn.ws.axis2.recipe01.HelloWorldImpl
</parameter>
<parameter name="useOriginalwsdl">
false
</parameter>
<operation name="sayHello">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
</operation>
</service>
根节点为service,它的name属性指定webservice名称,parameter标签用于指定一些配置参数,上面的ServiceClass参数指定webservice接口,useOriginalwsdl参数指定是否使用axis2自动生成wsdl,该参数通常为false,表示由axis2自动生成wsdl。operation标签指定对外发布的方法名。
4.在工程上点击右键=>export=>Jar File,点击Next按钮,去掉.classpath和.project文件选择。
5.保存文件名为axis2-recipe01.aar,將此文件复制到%TOMCAT_HOME%/webapps/axis2/WEB-INF/services目录下。
(注:axis2安装到tomcat请参考前面的文章)
6.重启tomcat服务器,打开浏览器访问http://localhost:8080/axis2/axis2-web/index.jsp
然后点击Services链接,看到如下界面说明我们的WebService发布成功。
点击HelloWorld链接,可以查看该WebService的wsdl文档。
本节内容就到此为止吧,基于axis2的客户端调用放在下节介绍。
WebService学习之旅(五)基于Apache Axis2发布第一个WebService的更多相关文章
- WebService学习之旅(七)Axis2发布WebService的几种方式
前面几篇文章中简单的介绍了如何使用Axis2发布WebService及如何使用Axis2实现Web服务的客户端调用,本节將详细介绍Axis2发布WebService的几种方式. 一.使用aar包方式发 ...
- WebService学习之旅(三)JAX-WS与Spring整合发布WebService
Spring本身就提供了对JAX-WS的支持,有兴趣的读者可以研究下Spring的Spring-WS项目,项目地址: http://docs.spring.io/spring-ws/sites/1.5 ...
- WebService-01-使用jdk发布第一个WebService服务并调用
Webservice是SOAP+XML,SOAP是基于Http的,Http底层是Socket,先回顾一下Socket: Server: public class Server { public sta ...
- WebService学习之旅(六)使用Apache Axis2实现WebService客户端调用
上节介绍了如何使用Axis2 发布一个WebService,Axis2除了为我们编写WebService应用带来了便利,也同样简化的客户端调用的过程,本节在上节的基础上使用Axis2自带的工具生成客户 ...
- WebService学习之旅(四)Apache Axis2的安装
一.Axis2简介 Axis2是目前使用较多的WebService引擎,它是Axis1.x的升级版本,不仅支持SOAP1.1和SOAP1.2,而且也提供了对REST风格WebService的支持. A ...
- Eclipse + Apache Axis2 发布RESTful WebService(一)基础知识
1.什么是WebService 学习 WebService 第一步:体系结构.三元素SOAP/WSDL/UDDI 2.什么是Axis2 Axis2是Apache一套崭新的WebService引擎(框架 ...
- Eclipse + Apache Axis2 发布SOAP WebService(三)第一个程序Hello Axis2 SOAP!
因为Axis2同时支持SOAP和RESTful的WebService开发. 我的目标主要是RESTful,这里简单记录一个SOAP的小例子: 原文地址:https://jingyan.baidu.co ...
- Eclipse + Apache Axis2 发布RESTful WebService(三)第一个程序Hello Axis2 !(未成功)
此路不通 Axis2发布SOAP WebService非常简单,建一个Dynamic Web Project,然后为它建一个Axis的Web Service(Tomcat7+JDK),就会生成Clas ...
- WebService 学习之路(一):了解并使用webService
webService主要用于向其他系统提供接口以便调用,系统间可能开发语言等完全不同,根据约定的接口规范,调用者传递相关参数进行接口调用,服务方根据传入的条件进行业务处理并进行结果返回. webSer ...
随机推荐
- atexit函数详解
对C语言有所了解的人都知道main函数是整个程序的入口,但是其实不然,在内核中可以使用链接器来设置程序的开始地方.当内核使⽤⼀个exec函数执⾏C程序时,在调⽤main函数之前先调⽤⼀个特殊的启动例程 ...
- bzoj2959
lct+并查集 联赛之后忘了很多东西 复习一下 这并不是一棵树,所以我们不能直接上lct 但是把双联通分量缩了以后就是一棵树了 怎么缩呢 就是把splay拆了合并到一个点上 连通性和双联通分量拿两个并 ...
- AngularJS系统学习之Directive(指令)
本文转自https://www.w3ctech.com/topic/1612 原文作者: Nicolas Bevacqua 原文:AngularJS’ Internals In Depth, Part ...
- Linux中如何开启8080端口供外界访问 和开启允许对外访问的端口8000
举例: 开放10000端口的解决步骤如下: 1.修改/etc/sysconfig/iptables文件,增加如下一行: -A INPUT -m state --state NEW -m tcp -p ...
- LeetCode: 258 Add Digits(easy)
题目: Given a non-negative integer num, repeatedly add all its digits until the result has only one di ...
- Fitnesse的一个简单实例
Fixture 代码 package eg; import org.joda.time.DateTime; public class JodaTime { int year; public Strin ...
- laravel SQL语句
DB::table('表名')->get(); //查询表里的所有数据 DB::table('表名')->where()->find(需要查询的条数); 查询单或多条数据 ...
- 使用JRegex抽取网页信息
当网络爬虫将网页下载到磁盘上以后,需要对这些网页中的内容进行抽取,为索引做准备.一个网页中的数据大部分是HTML标签,索引肯定不会去索引这些标签.也就是说,这种信息是没有用处的信息,需要在抽取过程中过 ...
- eclipse svn 相关
eclipse本身带有cvs插件,我们也可以在eclipse里面加上svn插件,请参考eclipse安装svn插件,以及使用,但是在eclipse的左边栏,.svn,.cvs的文件会显示出来,目录拉的 ...
- [Noip2012普及组]摆花
Description 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共 m 盆.通过调查顾客的喜好,小明列出了顾客最喜欢的 n 种花,从 1 到 n 标号.为了在门口展出更多种花,规定 ...