杰瑞科技汇

axis2 webservice教程,从入门到实战怎么学?

Axis2 WebService 教程

目录

  1. 第一部分:准备工作

    axis2 webservice教程,从入门到实战怎么学?-图1
    (图片来源网络,侵删)
    • 1 什么是 Axis2?
    • 2 环境要求
    • 3 下载并安装 Axis2
    • 4 在 Eclipse 中配置 Tomcat 服务器
  2. 第二部分:创建并发布第一个 WebService

    • 1 创建动态 Web 项目
    • 2 编写服务端 Java 代码 (POJO)
    • 3 打包服务 (生成 .aar 文件)
    • 4 部署 Axis2 到 Tomcat
    • 5 发布 WebService
    • 6 测试 WebService
  3. 第三部分:客户端调用 WebService

    • 1 创建 Java 客户端项目
    • 2 生成客户端代码
    • 3 编写客户端调用代码
    • 4 运行客户端测试
  4. 第四部分:进阶主题

    • 1 使用注解方式开发服务 (@WebService)
    • 2 处理复杂数据类型
    • 3 传递和接收 XML 数据
  5. 第五部分:常见问题与总结

    axis2 webservice教程,从入门到实战怎么学?-图2
    (图片来源网络,侵删)

第一部分:准备工作

1 什么是 Axis2?

Apache Axis2 是一个开源的、高性能的、功能强大的 WebService 引擎和框架,它支持 SOAP 1.1 和 1.2,以及 RESTful 风格的 WebService,Axis2 是 Axis1 的下一代产品,在架构和性能上都有显著提升。

2 环境要求

  • JDK: 1.8 或更高版本
  • IDE: Eclipse for Java EE Developers (或类似版本)
  • Web 服务器: Apache Tomcat 9.x (或其他兼容的 Servlet 容器)
  • Axis2: 1.7.9 (稳定版)

3 下载并安装 Axis2

  1. 下载 Axis2: 访问 Apache Axis2 官方下载页面
  2. 选择版本: 下载 Axis2 Standard Binary Distribution (axis2-1.7.9-war.zip),这个版本包含了一个可以部署到 Tomcat 的 .war 文件。
  3. 解压: 将下载的 .zip 文件解压到一个目录,D:\tools\axis2-1.7.9

4 在 Eclipse 中配置 Tomcat 服务器

  1. 打开 Eclipse,菜单栏选择 Window -> Preferences -> Server -> Runtime Environments
  2. 点击 Add... 按钮。
  3. 选择 Apache -> Apache Tomcat v9.0,点击 Next
  4. 选择 Tomcat 的安装目录(如果你还没有安装,可以先下载一个并解压),然后点击 Finish
  5. 你可以在 Eclipse 中创建一个新的服务器实例了,右键点击 Servers 视图,选择 New -> Server,选择你刚刚配置的 Tomcat v9,然后完成。

第二部分:创建并发布第一个 WebService

我们将创建一个简单的 "Hello World" WebService。

1 创建动态 Web 项目

  1. 在 Eclipse 中,右键点击 Package Explorer -> New -> Dynamic Web Project
  2. 输入项目名称,Axis2WebServiceDemo
  3. 选择 Target runtime 为你配置好的 Apache Tomcat v9
  4. 点击 Finish

2 编写服务端 Java 代码 (POJO)

Axis2 支持简单的 POJO (Plain Old Java Object) 作为 WebService,我们创建一个 Java 类。

  1. src 目录下,创建一个包,com.example.service
  2. 在该包下创建一个 Java 类 HelloService.java
package com.example.service;
public class HelloService {
    // 这是一个简单的公共方法,Axis2 会自动将其暴露为 WebService 操作
    public String sayHello(String name) {
        if (name == null || name.trim().isEmpty()) {
            return "Hello, Stranger!";
        }
        return "Hello, " + name + "!";
    }
}

说明:

axis2 webservice教程,从入门到实战怎么学?-图3
(图片来源网络,侵删)
  • 这个类没有继承任何特定类或实现任何接口。
  • 公共方法 sayHello 将自动成为 WebService 的一个操作。
  • 方法的参数和返回值会被自动序列化为 XML。

3 打包服务 (生成 .aar 文件)

Axis2 使用 .aar (Axis2 Archive) 文件作为 WebService 的部署包。

  1. 在 Eclipse 中,右键点击你的项目 Axis2WebServiceDemo -> Export

  2. 选择 Web -> WAR file,点击 Next

  3. 选择 Destination (导出路径,D:\temp\Axis2WebServiceDemo.war),点击 Finish

  4. 我们需要将 .war 文件解压,然后把我们的 Java 类 .class 文件放进去,然后重新打包成 .aar,这个过程有点繁琐,有一个更简单的方法:

    • 推荐方法: 使用 Axis2 自带的 axis2-aar-maven-plugin 或直接使用 IDE 插件,但为了简单,我们手动操作: a. 用解压工具打开刚刚导出的 Axis2WebServiceDemo.war 文件。 b. 将 WEB-INF/classes/com/example/service/HelloService.class 复制出来。 c. 将 Axis2 根目录下的 lib 目录(D:\tools\axis2-1.7.9\lib)下的所有 .jar 文件也复制出来。 d. 创建一个新的 .zip 文件,命名为 HelloService.aar。 e. 将 HelloService.class 和所有 lib 下的 .jar 文件(以及 META-INF 目录,如果有的话)作为文件(而不是文件夹)添加到 HelloService.aar 的根目录下。 f. 重要: 将 HelloService.aar 的扩展名改为 .zip,然后解压它,进入解压后的目录,删除 lib 文件夹(因为 .aar 打包时会自动处理依赖),然后重新选中所有文件,压缩成一个新的 HelloService.aar 文件。

    这个手动方法非常容易出错,强烈推荐使用下面的 IDE 插件方法:

    IDE 插件方法 (更简单):

    1. 在 Eclipse 中安装 "Axis2 Service Archiver" 插件。 (Help -> Eclipse Marketplace... 搜索并安装)。
    2. 安装后,右键点击你的项目 Axis2WebServiceDemo -> Export -> Axis2 Service -> Axis2 Service Archive
    3. Input .class files 页面,点击 Add External Classes,添加你的 HelloService.class 文件。
    4. Service Name 页面,输入服务名 HelloService
    5. Target Archive 页面,选择导出路径,D:\temp\HelloService.aar
    6. 点击 Finish,这样就生成了 .aar 文件。

4 部署 Axis2 到 Tomcat

  1. axis2-1.7.9-war.zip 中解压出的 axis2.war 文件复制到你的 Tomcat 的 webapps 目录下(apache-tomcat-9.0.65\webapps)。
  2. 启动 Tomcat 服务器(在 Eclipse 的 Servers 视图中右键点击你的 Tomcat 实例 -> Start)。
  3. Tomcat 会自动解压 axis2.war,访问 http://localhost:8080/axis2/,如果看到 Axis2 的欢迎页面,说明部署成功。

5 发布 WebService

  1. 将我们刚刚生成的 HelloService.aar 文件复制到 Tomcat 的 webapps/axis2/WEB-INF/services 目录下。
  2. 刷新 Axis2 的管理页面 (http://localhost:8080/axis2/),你会看到一个 "Upload Service" 的链接。
  3. 点击它,然后点击 "Browse..." 选择你的 `
分享:
扫描分享到社交APP
上一篇
下一篇