zoukankan      html  css  js  c++  java
  • 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容器,可以通过binaxis2server.bat来启动该服务

    修改confiaxis2.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直接使用

  • 相关阅读:
    安装lnmp 时如何修改数据库数据存储地址及默认访问地址
    ubuntu 设置root用户密码并实现root用户登录
    解决ubuntu 远程连接问题
    linux 搭建FTP服务器
    PHP 根据ip获取对应的实际地址
    如何发布自己的composer包
    使用composer安装composer包报Your requirements could not be resolved to an installable set of packages
    laravel 框架配置404等异常页面
    使用Xshell登录linux服务器报WARNING! The remote SSH server rejected X11 forwarding request
    IoTSharp 已支持国产松果时序数据库PinusDB
  • 原文地址:https://www.cnblogs.com/liufei5200/p/13984476.html
Copyright © 2011-2022 走看看