Web服务开发框架-使用Axis框架开发Web服务

Apache Axis是一个功能齐全的SOAP引擎,提供创建服务端,客户端和网关SOAP操作的基本框架,

1.常用的Web服务框架

1.1Apache服务框架Axis

缺点:开发过程繁琐,配置复杂,缺少简单易懂用户指南

1.2 CodeHaus服务框架XFire

优点:简化Web服务开发,开发速度快,可以和Spring结合

缺点:缺少支持附件的功能,缺少简单易懂的用户指南

1.3 Apache服务框架CXF

2.Eclipse+Axis2整合开发Web Service----HelloWorld实例

1.下载并安装Axis2

1.1http://axis.apache.org/axis2/java/core/index.html

1.2

1.3

该Axis2类似于一个Tomcat容器,可以通过bin\axis2server.bat来启动该服务

修改confi\axis2.xml中的端口8080为8081。

启动后在地址栏http://localhost:8081/来看Axis2的服务

1.4 配置Eclipse与Axis2的集成

1.5开发Web service服务器端--AxisHelloWorldServer项目

1.首先创建AxisHelloWorldServer,并新建包名com.demo

2.新建服务类HelloWorld.java

复制代码
1 package com.demo;
2
3 public class HelloWorld {
4
5 public String sayHello(String world){
6 System.out.println("接受客户端请求:"+world);
7 return "Hello"+world+"!";
8 }
9 }
复制代码
3.新建并发布Web Service

为了使以上普通POJO类能够作为WEB服务被发布,

接下来在AxisHelloWorldServer项目名称上单击鼠标右键

在弹出快捷菜单中选择新建命令

在弹出窗口中选择Web Service->Web Service

单击Next,出现Web Service,在Service Implementation后单击Browse

按钮来添加一个实现类,直接指向刚才新建HelloWorld.java

将Web Service type中滑块调到Start service的位置,

将Client type中滑块调到Test Client的位置

等启动后,单击Next按钮一切默认,最后Finsh

访问Web Service

http://localhost:8080/WebServiceProject/services/HelloWorld?wsdl

至此,我们就完成了helloworld.java发布Web的过程

WebServiceProject和WebServiceProjectClient是两个滑块对应的服务项目

4.开发Web Service客户端-----AxisHelloWorldClient项目

为了开发客户端服务器,新建一个AxisHelloWorldClient,并新建一个包com.demo

1.导出Web Service客户端代码

在AxisHelloWorldClient上右键项目,新建,点击Web Services--》Web Service Client

在Service implementation中输入http://localhost:8080/WebServiceProject/services/HelloWorld?wsdl

点击Finsh,此时AxisHelloWorldClient项目com.demo包下产生Web服务端java代码

2.编写客户端类

根据HelloWorldLocator的getHelloWorldHttpSoap11Endpoint()的方法获得Hello World实例

复制代码
1 package com.demo;
2
3 import java.rmi.RemoteException;
4
5 import javax.xml.rpc.ServiceException;
6
7 public class HelloWorldClient {
8
9 public static void main(String[] args) {
10
11 String world;
12 try {
13 world = new HelloWorldLocator().getHelloWorldHttpSoap11Endpoint().sayHello("World");
14 System.out.println(world);
15 } catch (RemoteException e) {
16 // TODO Auto-generated catch block
17 e.printStackTrace();
18 } catch (ServiceException e) {
19 // TODO Auto-generated catch block
20 e.printStackTrace();
21 }
22 }
23 }
复制代码
3.运行客户端类

此时运行客户端HelloWorldClient.java

该结果是通过服务端调用返回的,同时服务端又输出world

  1. 打包AxisHelloWorldServer.zip和AxisHelloWorldClient.zip

以后导入到eclipse直接使用

Web服务开发框架-使用Axis框架开发Web服务

上一篇:css 样式代码收藏


下一篇:HttpServletResponse