相关历史文章(阅读本文之前,您可能需要先看下之前的系列?)

WebService SOAP概述 - 第275篇

WSDL是什么“Lese” - 第276篇

一、前言

当官不为民做主,不如回家卖红薯;与其调用别人的服务,不如调用自己的服务。

看别人发布的WSDL服务是不是自己也心痒痒的,赶紧吧,3号技师已经等你好久了。

通过本文你将知道:有什么常见的技师手法,口误,是什么常见的实现方式;实现思路是怎么样子的?

二、常见的webservice实现方式

比如最常用的有JWS、axis2、XFire和CXF,通过框架可以发布wsdl接口,也可以实现webservice客户端

2.1 JWS

JWS(JAX-WS、Java API for XML Web Service)是jdk1.6之后新增的对webservice的支持,JWS是轻量级的实现,使用较方便,如果确定是Java语言所编写的应用程序之间的调用,JWS是最佳选择。

2.2 axis2

Axis2是下一代 Apache Axis。Axis2 虽然由 Axis 1.x 处理程序模型提供支持,但它具有更强的灵活性并可扩展到新的体系结构。Axis2 基于新的体系结构进行了全新编写,而且没有采用 Axis 1.x 的常用代码。支持开发 Axis2 的动力是探寻模块化更强、灵活性更高和更有效的体系结构,这种体系结构可以很容易地插入到其他相关 Web 服务标准和协议(如 WS-Security、WS-ReliableMessaging 等)的实现中。

2.3 cxf

Apache CXF= Celtix + XFire,开始叫 Apache CeltiXfire,后来更名为 Apache CXF 了,以下简称为 CXF。CXF 继承了 Celtix 和XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding 、DataBinding、Transport 以及各种 Format 的支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WSDL 优先(WSDL First)来轻松地实现 Web Services 的发布和使用。Apache CXF已经是一个正式的Apache顶级项目。

2.4 XFire

xfire是webservice的一个实现框架,是apache旗下CXF的前身,是一个比较被广泛使用的webservice框架,网上有很多关于如何使用xfire或cxf的helloworld案例,但是对于它是如何运行起来的介绍比较少,最近在排查问题时对xfire的代码进行了debug,因而对xfire的运行有了大概了解,在此进行下简单总结。

通过上面的介绍常用的技术方式就是JWS和cxf。

三、Spring Boot常用的webservice方案

在Spring Boot常用的方案就是SpringWeb Services和cxf。

3.1 Spring Web Services

Spring Web services是Spring推出的一款构建webservice服务的框架。其主要侧重点是创建文档驱动的Web服务。Spring Web Services项目促进了契约优先的SOAP服务开发,提供了多种方式来创建灵活的Web服务,这些服务可以通过多种方式处理XML负载。可无缝地使用Spring依赖注入和配置等概念。

Spring-WS项目由由以下几个项目组成:

(1)Spring-WSCore(spring-ws-core.jar) - 它是主要模块,提供WebServiceMessage和SoapMessage等中央接口,服务器端框架,强大的消息分发功能和支持类来实现Web服务端点。它还提供Web Service消费者客户端作为:WebServiceTemplate。

(2)Spring-WSSupport(spring-ws-support.jar) − 该模块为JMS,电子邮件等提供支持。

(3)Spring-WSSecurity (spring-ws-security.jar) - 该模块负责提供与核心Web服务模块集成的WS-Security实现。使用这个模块,可以添加主体令牌,签名,加密和解密SOAP消息。该模块允许使用现有的Spring Security实现进行认证和授权。

(4)SpringXML(spring-xml.jar) − 该模块为Spring WebServices提供XML支持类。该模块由Spring-WS框架内部使用。

(5)Spring OXM - 该模块提供了XML与对象映射的支持类。

集成依赖:

<dependency>    <groupId>org.springframework.bootgroupId>    <artifactId>spring-boot-starter-web-servicesartifactId>dependency>

<dependency>    <groupId>wsdl4jgroupId>    <artifactId>wsdl4jartifactId>dependency>

3.2 cxf

最常用的是使用cxf开发web-service。本身是基于JAX-WS规范来实现的。当然,本身CXF也实现了JAX-RS规范来实现RESTFul Service。

集成依赖:

<dependency>    <groupId>org.apache.cxfgroupId>    <artifactId>cxf-spring-boot-starter-jaxwsartifactId>    <version>3.2.5version>dependency>

本节就先介绍这里,下面就实际来摸摸CXF和spring-ws怎么玩吧。

我就是我,是颜色不一样的烟火。我就是我,是与众不同的小苹果。

à悟空学院:http://t.cn/Rg3fKJD

学院中有Spring Boot相关的课程!点击「」进行查看!

SpringBoot视频:http://t.cn/R3QepWG

Spring Cloud视频:http://t.cn/R3QeRZc

SpringBoot Shiro视频:http://t.cn/R3QDMbh

SpringBoot交流平台:http://t.cn/R3QDhU0

SpringData和JPA视频:http://t.cn/R1pSojf

SpringSecurity5.0视频:http://t.cn/EwlLjHh

Sharding-JDBC分库分表实战:http://t.cn/E4lpD6e

cxf开发webservice服务端怎么返回固定的报文格式_Spring boot webservice怎么玩? 第277篇...相关推荐

  1. 【转】使用Apache CXF开发WebServices服务端

    原地址:http://cnjava.blog.51cto.com/1208887/335630 在前一篇的博客中,我使用Xfire1.x来开发了WebServies的服务端. 但是如果你访问Apach ...

  2. java cxf服务端代码_【JAVA】 cxf 生成 webservice 服务端代码

    CXF Apache CXF = Celtix + XFire.CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding . ...

  3. WebService服务端与客户端开发

    最近客户提出了将我们做的系统接入到他们系统之中,方便他们进行集中管理这个需求,其中主要就是运用了WebService技术来进行系统之间的接入.在此记录一下整个WebService是如何嵌入我们系统的以 ...

  4. Spring和CXF整合发布WebService(服务端、客户端)

    参考Spring和CXF整合发布WebService(服务端.客户端) 转载于:https://www.cnblogs.com/timspace/p/11113576.html

  5. 使用 CXF 开发 SOAP 服务

    转自其它网页,用来记下学习. 今天我们将视角集中在 REST 上,它是继 SOAP 以后,另一种广泛使用的 Web 服务.与 SOAP 不同,REST 并没有 WSDL 的概念,也没有叫做" ...

  6. cxf restful_使用Apache CXF开发RESTful服务

    cxf restful 介绍 如您所知,有两种开发Web服务的方法 简单对象访问协议(SOAP) 代表性状态转移(REST) 在继续学习如何使用Apache CXF创建基于REST的Web服务之前,我 ...

  7. 使用Apache CXF开发RESTful服务

    介绍 如您所知,有两种开发Web服务的方法 简单对象访问协议(SOAP) 代表性状态转移(REST) 在继续学习如何使用Apache CXF创建基于REST的Web服务之前,我们将了解什么是REST. ...

  8. PHP写webservice服务端

    1) WebService技术介绍 WebService是一种跨编程语言和跨操作系统平台的远程调用技术.仅仅有通过Web Service,client和server才可以自由的用HTTP进行通信.不论 ...

  9. 17 SSR:使用 React.js 开发 Serverless 服务端渲染应用

    今天我想和你聊一聊怎么用 Serverless 开发一个服务端渲染(SSR)应用. 对前端工程师来说,Serverless 最大的应用场景之一就是开发服务端渲染(SSR)应用.因为传统的服务端渲染应用 ...

最新文章

  1. _DataStructure_C_Impl:Dijkstra算法求最短路径
  2. JS验证框架的使用方法
  3. Gps高程拟合matlab代码,几种GPS高程拟合方法分析与比较.doc
  4. memcache php windows,windows系统下安装memcache
  5. Android开发中StackOverflowError错误实例分析
  6. java types.varchar_java statement.registerOutParameter(5, java.sql.Types.VARCHAR)返回值长度限制...
  7. O(n)复杂度求没有出现的数字(leetcode448)
  8. html画布arc,绘制弧线将线性渐变html5画布(Draw arc will linear gradient html5 canvas)
  9. OMRON欧姆龙Sysmac Studio软件--最新版快捷键
  10. 唐宇迪学习笔记9:逻辑回归与梯度下降策略
  11. 计算机word基础操作知识点,计算机WORD知识点整理
  12. 大数据的本质和核心是什么
  13. 龙尚3G模块在arm板上的应用
  14. jsp+servlet搭建在线投票问卷系统
  15. 最后3天!生信入门转录组和可视化学习捷径
  16. 《指定一个用户只能在特定的时间里不能登陆》『罗斌原创』
  17. 解决办法:git错误 error: failed to push some refs to 'https://github.com/...
  18. MuleSoft知识总结-21.Mule组件(Until Successful)
  19. GoogleTest使用教程
  20. android微信wcdb,[资讯] 微信正式开源移动端数据库组件WCDB!

热门文章

  1. 微软Vista今起大幅降价 最高幅度达到千元
  2. FreeBSD与Linux的比较
  3. 新手怎样学习C语言C++?
  4. 推荐10个最好的Javascript和CSS库
  5. 鸟哥:程序员应该不断提升自身的不可替代性
  6. javascript兼容性:IE6/7关闭浏览器操作
  7. 计算机扩展卡,对于电脑来说, 扩展卡是什么?与接口又有什么关系呢?
  8. 虚拟邮箱怎么设置方法_腾讯企业邮箱邮件列表白名单设置方法
  9. 机器学习笔记十一之降维
  10. 这个转录组比对工具很快,十几分钟一个样品