前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >03.WebService_CXF

03.WebService_CXF

作者头像
Java帮帮
发布2018-03-15 17:59:06
9680
发布2018-03-15 17:59:06
举报
03.WebService_CXF

一、什么是CXF?

Apache CXF = Celtix + Xfire,开始叫 Apache CeltiXfire,后来更名为 Apache CXF 了,以下简称为 CXF。Apache CXF 是一个开源的 web Services 框架,CXF 帮助您构建和开发 web Services ,它支持多种协议,比如:SOAP1.1,1,2 XML/HTTP、RESTful 或者CORBA。

RESTful: 一种风格而不是一个协议。它理念是网络上的所有事物都被抽象为资源,每个资源对应一个唯一的资源标识符。

Cxf是基于SOA总线结构,依靠spring完成模块的集成,实现SOA方式。

灵活的部署: 可以运行在Tomcat,Jboss,Jetty(内置),weblogic上面。

环境变量的配置

CXF_HOME: 安装目录。

Path: bin目录。

二、使用CXF发布jax-ws规范的WebService

1.服务端

第一步: 创建一个java工程

第二步: 导入cxf的jar包。138个

第三步: 编写SEI接口。需要在SEI接口上添加@Webservice注解。

第四步: 编写SEI实现类。不需要加注解。

第五步: 发布服务

1、创建一个JaxWsServerFactoryBean对象

2、设置SEI接口setServiceClass

3、设置SEI实现类对象。setServiceBean

4、设置服务发布地址。setAddress

5、发布服务。Create

POJO

SEI

SEI实现类

发布服务

查看服务

2.wsdl3java命令

3.客户端开发

(1)传统客户端开发

结果:

日期: 2016-07-27 最高温度: 30 最低温度: 20 天气信息: 北京: 今天很热 ============================================ 日期: 2016-07-28 最高温度: 31 最低温度: 21 天气信息: 北京: 今天小雨 ============================================ 日期: 2016-07-29 最高温度: 32 最低温度: 22 天气信息: 北京: 今天大雨 ============================================

(2)使用CXF实现客户端

步骤:

1、导入cxf的jar包

2、创建一个JaxWsProxyFactoryBean对象

3、设置一个PortType的class。

4、设置一个address。服务端的url包括ip及端口。

5、调用create方法生成PortType代理对象。

6、调用服务端方法

7、打印结果。

结果:

日期: 2016-07-27 最高温度: 30 最低温度: 20 天气信息: 上海: 今天很热 ============================================ 日期: 2016-07-28 最高温度: 31 最低温度: 21 天气信息: 上海: 今天小雨 ============================================ 日期: 2016-07-29 最高温度: 32 最低温度: 22 天气信息: 上海: 今天大雨 ============================================

越努力,越幸运!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-11-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java帮帮 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、什么是CXF?
  • 二、使用CXF发布jax-ws规范的WebService
    • 1.服务端
      • 2.wsdl3java命令
        • 3.客户端开发
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档