使用Axis2的底层API开发Web Service

1.使用Axis2的底层API开发Web Service Server端

1.1创建一个WebService(取名为MyService)

在MyService中有两个operations,如下所示。

public void ping(OMElement element){}//IN-ONLY模式。仅仅接收OMElement,并对 其处理。

public OMElement echo(OMElement element){}//IN_OUT模式。接收OMElemen,并返回 OMElement。

1.2如何写Web Service

1)创建实现服务的类。

2)创建services.xml来解析这个Web Service。

3)将其打包成一个*.aar文档(Axis Archive)。

4)部署Web Service。

1.2.1 创建实现服务的类

此类中提供的方法必须与Web Service(在services.xml中声明)中的operations对应 。除非你提供了数据绑定,否则所有的方法只能接收一个参数,其类型为OMElement。

public class MyService{
  public void ping(OMElement element){...}
  public OMElement echo(OMElement element){...}
}

MyService.java

package userguide.example1;
import org.apache.axiom.om.OMElement;
import org.apache.axis2.AxisFault;
import javax.xml.stream.XMLStreamException;
public class MyService {
   public OMElement echo(OMElement element) throws XMLStreamException {
     //Praparing the OMElement so that it can be attached to another OM Tree.
     //First the OMElement should be completely build in case it is not fully built and still
     //some of the xml is in the stream.
     element.build();
     //Secondly the OMElement should be detached from the current OMTree so that it can
     // be attached some other OM Tree. Once detached the OmTree will remove its
    // connections to this OMElement.
     element.detach();
     return element;
   }
   public void ping(OMElement element) throws XMLStreamException {
     //Do some processing
   }
   public void pingF(OMElement element) throws AxisFault{
     throw new AxisFault("Fault being thrown");
   }
}

时间: 2025-01-20 14:35:40

使用Axis2的底层API开发Web Service的相关文章

Axis2与Eclipse整合开发Web Service之一:简单的计算服务例子

系统功能: 开发一个计算器服务CalculateService,这个服务包含加(plus).减(minus).乘 (multiply) .除(divide)的操作. 开发前准备: 1.安装Eclipse-jee: 2.下载Axis2的最新版本Axis2 1.4.1 Release,网址 http://ws.apache.org/axis2/download/1_4_1/download.cgi ,选择Standard Binary Distribution 的.zip包即"axis2-1.4.1

基于Tomcat5.0和Axis2开发Web Service应用实例

1.工作环境 Eclipse 3.1.2+Lomboz+jdk1.5+ apache-tomcat-5.0.18+AXIS2:1.0(war版本和bin版本) 在http://ws.apache.org/axis2/download/1_0/download.cgi页面下,下载AXIS2的Binary Distribution url: http://apache.justdn.org/ws/axis2/1_0/axis2-std-1.0-bin.zip和war Distribution url

使用Axis开发Web Service程序

说道Web Service的程序开发,八个月前我加班调试公司和中国电信的商务领航系统的接口的时候,用的就是Web Service,Web Service有很多优点,使用Web Service可以在不同编程语言间实现数据交换,而我那时对Web Service也不熟,就由同事帮我生成了一大堆Web Service的框架代码,我则只单独开发业务代码. 这次的另外一个项目也要用Web Service了,不过人手也少了,没有人帮做Web Service了,只好自己动手. 好在开发前,有个同事先给我们不熟悉

ubuntu下安装 gSOAP 用于C/C++开发web service服务端与客户端

昨天在ubuntu下进行安装gSOAP,费了很多时间,没成功,今天又来找了大量教程资料,终于一次成功,这里写下自己的安装步骤和方法,供大家参考. 首先下载gsoap,我下载的是gsoap-2.8.1.zip 用unzip gsoap-2.8.1.zip命令解压缩,会解压生成gsoap-2.8文件夹. cd gsoap-2.8   在安装之前需要先安装一些编译工具.     安装编译工具: $sudo apt-get install build-essential 为了成功编译gSOAP,您需要安

cxf spring集合中开发Web Service遇见的java.util.Date无缺省函数问题

问题描述 cxf spring集合中开发Web Service遇见的java.util.Date无缺省函数问题 在domain中有User类public class User {          private String userName;private String userPassword;private String mobile;private String email;private String nickname;private String region;private ja

基于WAS CE和Axis2开发Web Service应用

引言 近年来,随着Web Service技术迅速发展,基于Web Service开发的应用被使用的越来越广泛.Web Service良好的封装性及跨平台能力为应用程序集成.B2B集成等应用场景提供可行的解决方案.本文将介绍如何使用WAS CE(WebSphere Application Server Community Edition)和Apache Axis2开发.部署及测试一个简单的Web Service应用-网上花店. 1.应用及运行环境介绍 1.1 WAS CE简介 WebSphere

基于Tomcat5.0和Axis2开发Web Service代码详解

1.HelloWorld做了些什么? HelloWorld功能非常简单,在客户端输入你的姓名,本例中为ZJ.参数传递到服务器端后,经过处理将返回name+"HelloWorld!",本例中为ZJ HelloWorld! 2.服务器端文件HelloWorld.java HelloWorld.java package sample; import org.apache.axiom.om.OMAbstractFactory; import org.apache.axiom.om.OMElem

用JDK开发web service

服务器端     编码:         a. 创建一个基于jdk6以上版本的java工程         b. 定义SEI web service Endpoint interface(web service终端接口)             @WebService             public interface HelloWS {                 @WebMethod                 public String sayHello(String nam

基于google map api开发web和google earth的KML地标插件

KML文件很好做,在你的google earth(以下简称GE)中选择你自己的或是别人的marker或layer,就可以保存成静态的地标或图层信息(kmz或kml格式),发送给你的朋友,用他的GE打开你的文件就可以看到你所标注的marker信息. 这些相关的文章让我迷失了好一段时间,不过,我想要的是动态的地标.类似于EEMAP那样的GE插件.下面我将讲述它的工作原理和制做方法. 先说几个概念,google map api是基于javascript+xml等技术实现的,另一款产品google ea