导读:
XML 功能强大,使用它能够定义任何事物。更重要的是,它是使大多数应用程序具有外部可读格式的基础,对于本系列文章所使用的 Axis2 和 JiBX 尤为显著。随着 Web 服务的日益普及,使用 Axis2 和 JiBX 将原来的 Java 项目转换成功能全面的 Web 服务也显得格外紧迫。以往,Web 服务都是根据一个服务和一个单一的类自动生成的,而现在开发人员可以通过已有项目中的各种 Java 类生成一个或多个服务。本文使用 XML 通过已有 Java 类定义了一个 Web 服务。 BBS.bitsCN.com网管论坛
简介bitsCN.nET*中国网管博客
Web 服务在日常开发中重要性与日俱增,Axis2 也成为了倍受人们欢迎的开发 Web 服务的开放源码平台。Axis2 使用 Java 语言编写,它能利用了 JiBX(一种框架,用于将XML和Java绑定在一起)的自由性。假设您有一个含有大量 Java 类和数据结构的 Java 项目,而且不想打乱或者更改它们。JiBX 会帮助您实现这一切,它把在 Axis2 中使用的 XML 数据与 Java 类绑定在一起。这样做的好处是代码易于维护,因为 Web 服务只使用已经开发好、可靠、真正的 Java 类。 bitsCN#com中国网管联盟
系统需求
www_bitscn_com中国.网管联盟
要学习这个分为两部分的系列文章,需要如下软件:
BBS.bitsCN.com网管论坛
Axis2,binary and WAR 版
JiBX 1.1
Geronimo 1.1.1
下载完上述所有软件后,解压 Geronimo 并键入:java -jar /bin/server.jar。 bitsCN.nET*中国网管博客
然后,为部署 axis2.war 文件,将 axis2 文件复制到 /deploy 目录。
bbs.bitsCN.com中国网管论坛
解压 Axis2 二进制文件,将 AXIS2_HOME 环境变量设置为 Axis2 二进制文件解压的目录(本例中设置为 c:/apps/axis2-1.1)。然后解压 JiBX,并将 /lib 目录的所有 JAR 文件(除了 stax-api.jar 文件之外,因为 Axis2 已经含有了 stax-api.jar 文件)复制到 /lib 目录下。 bitsCN#com中国网管联盟
这样就设置好了环境。 bitsCN~com
Java 类bitsCN#com中国网管联盟
这里提供了一些 Java 类,用于构成一个简单的 Web 服务 Java 项目。使用什么样的 Java 类并无大障,您也可以使用自己创建的 Java 类。本文使用的项目含有三个类:OneWayRequest 类、TwoWayRequest 类和 TwoWayResponse 类。按顺序看看每个类,我们先从 OneWayRequest 类开始(参见清单 1)。 bbs.bitsCN.com
清单 1. OneWayRequest Java 类 bitsCN~com
package com.ibm.devWorks.xml.simpleService;
public class OneWayRequest {
protected String requestData;
public String getRequestData() {
return this.requestData;
}
public void setRequestData(String requestData) {
this.requestData = requestData;
}
}
bitsCN#com中国网管联盟
上面的代码中只含有一个字段,即 requestData,它包含了请求的数据。该类有两个方法:一个用于设置字段值,另一个用于检索字段值。 bbs.bitsCN.com
接下来再看一看清单 2 中的 TwoWayRequest 类。
bitsCN.nET*中国网管博客
清单 2. TwoWayRequest Java 类 bitsCN~com
package com.ibm.devWorks.xml.simpleService;
public class TwoWayRequest {
protected String echoString;
protected boolean booolean;
public boolean getBooolean() {
return this.booolean;
}
public void setBooolean(boolean booolean) {
this.booolean = booolean;
}
public String getEchoString() {
return this.echoString;
}
public void setEchoString(String echoString) {
this.echoString = echoString;
}
}
bitsCN.nET*中国网管博客
这个类要稍长一点,它定义了两个字段:一个是 echoString,另一个是 booolean。与第一个类相同,该类为每个字段都定义了一个 getter 和一个 setter 方法。
本文转自
http://www.bitscn.com/dotnet/xml/200709/109611.html
XML 功能强大,使用它能够定义任何事物。更重要的是,它是使大多数应用程序具有外部可读格式的基础,对于本系列文章所使用的 Axis2 和 JiBX 尤为显著。随着 Web 服务的日益普及,使用 Axis2 和 JiBX 将原来的 Java 项目转换成功能全面的 Web 服务也显得格外紧迫。以往,Web 服务都是根据一个服务和一个单一的类自动生成的,而现在开发人员可以通过已有项目中的各种 Java 类生成一个或多个服务。本文使用 XML 通过已有 Java 类定义了一个 Web 服务。 BBS.bitsCN.com网管论坛
简介bitsCN.nET*中国网管博客
Web 服务在日常开发中重要性与日俱增,Axis2 也成为了倍受人们欢迎的开发 Web 服务的开放源码平台。Axis2 使用 Java 语言编写,它能利用了 JiBX(一种框架,用于将XML和Java绑定在一起)的自由性。假设您有一个含有大量 Java 类和数据结构的 Java 项目,而且不想打乱或者更改它们。JiBX 会帮助您实现这一切,它把在 Axis2 中使用的 XML 数据与 Java 类绑定在一起。这样做的好处是代码易于维护,因为 Web 服务只使用已经开发好、可靠、真正的 Java 类。 bitsCN#com中国网管联盟
系统需求
www_bitscn_com中国.网管联盟
要学习这个分为两部分的系列文章,需要如下软件:
BBS.bitsCN.com网管论坛
Axis2,binary and WAR 版
JiBX 1.1
Geronimo 1.1.1
下载完上述所有软件后,解压 Geronimo 并键入:java -jar /bin/server.jar。 bitsCN.nET*中国网管博客
然后,为部署 axis2.war 文件,将 axis2 文件复制到 /deploy 目录。
bbs.bitsCN.com中国网管论坛
解压 Axis2 二进制文件,将 AXIS2_HOME 环境变量设置为 Axis2 二进制文件解压的目录(本例中设置为 c:/apps/axis2-1.1)。然后解压 JiBX,并将 /lib 目录的所有 JAR 文件(除了 stax-api.jar 文件之外,因为 Axis2 已经含有了 stax-api.jar 文件)复制到 /lib 目录下。 bitsCN#com中国网管联盟
这样就设置好了环境。 bitsCN~com
Java 类bitsCN#com中国网管联盟
这里提供了一些 Java 类,用于构成一个简单的 Web 服务 Java 项目。使用什么样的 Java 类并无大障,您也可以使用自己创建的 Java 类。本文使用的项目含有三个类:OneWayRequest 类、TwoWayRequest 类和 TwoWayResponse 类。按顺序看看每个类,我们先从 OneWayRequest 类开始(参见清单 1)。 bbs.bitsCN.com
清单 1. OneWayRequest Java 类 bitsCN~com
package com.ibm.devWorks.xml.simpleService;
public class OneWayRequest {
protected String requestData;
public String getRequestData() {
return this.requestData;
}
public void setRequestData(String requestData) {
this.requestData = requestData;
}
}
bitsCN#com中国网管联盟
上面的代码中只含有一个字段,即 requestData,它包含了请求的数据。该类有两个方法:一个用于设置字段值,另一个用于检索字段值。 bbs.bitsCN.com
接下来再看一看清单 2 中的 TwoWayRequest 类。
bitsCN.nET*中国网管博客
清单 2. TwoWayRequest Java 类 bitsCN~com
package com.ibm.devWorks.xml.simpleService;
public class TwoWayRequest {
protected String echoString;
protected boolean booolean;
public boolean getBooolean() {
return this.booolean;
}
public void setBooolean(boolean booolean) {
this.booolean = booolean;
}
public String getEchoString() {
return this.echoString;
}
public void setEchoString(String echoString) {
this.echoString = echoString;
}
}
bitsCN.nET*中国网管博客
这个类要稍长一点,它定义了两个字段:一个是 echoString,另一个是 booolean。与第一个类相同,该类为每个字段都定义了一个 getter 和一个 setter 方法。
本文转自
http://www.bitscn.com/dotnet/xml/200709/109611.html