上篇博文介绍了如何將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的客户端调用放在下节介绍。

最新文章

  1. native2ascii.exe 字符转码与反转码
  2. ionic蓝牙用法
  3. Error:identifer “blockIdx” and __syncthreads() undefined
  4. C# 字符串 数据类型 判断 与特定规则验证
  5. CSS默认可继承样式
  6. IIS8发布WCF接口中遇到的问题总结
  7. SQL Server数据库还原:&quot;因为数据库正在使用,所以无法获得对数据库的独占访问权&quot;
  8. FLASH CC 2015 CANVAS 中 createjs 移除绑定事件
  9. FR #3题解
  10. 【Binary Tree Inorder Traversal】cpp
  11. 【剑指offer】从尾到头打印链表
  12. Deep Learning论文笔记之(八)Deep Learning最新综述
  13. IntelliJ IDEA 配置Jetty
  14. iOS_SN_深浅拷贝( 百度的)_转载
  15. SQL多表连接查询以及mysql数据库、sqlserver数据库常见不同点
  16. [HDU 2036]改革春风吹满地
  17. springboot+spring security +oauth2.0 demo搭建(password模式)(认证授权端与资源服务端分离的形式)
  18. git冲突管理
  19. 初学Python的奇葩用法
  20. centos6.x下安装maven

热门文章

  1. bzoj4521
  2. bzoj3456
  3. 二、Chrome开发者工具详解(2)-Network面板
  4. MVC 登录后重定向回最初请求的 URL FormsAuthentication.RedirectFromLoginPage
  5. SQL 维护计划(自动删除备份文件)
  6. Linux : Linux命令
  7. 2.7-2.8 导入、导出数据(进/出)hive表的方式
  8. 【原创】Gitbook使用
  9. SmartSql使用教程(1)——初探,建立一个简单的CURD接口服务
  10. POJ3697【BFS】