首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么从契约优先SOAP服务中的XSD (而不是WSDL)开始呢?

为什么从契约优先SOAP服务中的XSD (而不是WSDL)开始呢?
EN

Stack Overflow用户
提问于 2015-08-16 05:42:05
回答 2查看 958关注 0票数 3

在这个Spring参考文献中(第3章.写合同-第一Web服务)

http://docs.spring.io/spring-ws/site/reference/html/tutorial.html

它说:“服务契约通常表示为WSDL文件。请注意,在Spring中,不需要手工编写WSDL。基于XSD和一些约定,Spring可以为您创建WSDL .

这也是在示例应用程序中实现的方法:

https://github.com/spring-guides/gs-soap-service.git

只是想知道..。如果您先做“契约优先”,那么为什么要从XSD开始,让框架生成WSDL呢?我认为,作为最佳实践,“契约优先”的理念是让您最大限度地控制接口,确保不同SOAP服务框架、工具、语言等之间的最大兼容性。

虽然XSD包含数据类型和请求/响应对象类型,但它没有定义实际的服务操作(或者其他一些东西?)

在没有在XSD中定义的东西中,您是否会遇到不同工具之间的不兼容?

希望对此作出一些澄清..。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-05 14:43:03

请参阅此比较:https://dzone.com/articles/apache-cxf-vs-apache-axis-vs

“在没有在XSD中定义的东西中,您不会遇到不同工具之间不兼容的风险吗?”

基本上,Spring所做的是让您通过代码定义服务,并使用从XSD生成的域对象。我想你在那边不会有问题的。

但是,根据我目前的经验,因为Spring不完全兼容JAX,所以您可能会遇到一些实现问题,特别是在第三方团队工作时。例如,spring不支持相同的命名方法&属性对象。

除此之外,它很容易设置和使用

票数 1
EN

Stack Overflow用户

发布于 2015-09-02 12:48:31

在我的经验中,使用spring的主要原因。WSDL可以通过Spring动态生成。这是非常有利的,因为它包含端点(这是不同的景观)。使用基本XSD来定义常用的数据元素是很常见的。此外,在定义XSD之后,可以使用jaxb为源代码生成必要的类文件。

正如您所看到的,通过定义XSD,从而从它们生成类文件。您的代码库正在成为一个合法的web服务。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32035716

复制
相关文章
为什么数组下标从 0 开始?而不是 1?
鱼皮最新原创项目教程,欢迎学习 大家好,我是鱼皮。很多小伙伴初学编程的时候都被元素下标折磨过,为什么很多编程语言要把 0 作为第一个下标索引,而不是直观的 1 呢? 这个问题 Dijkstra 已经解答过了,没错,就是你知道的 Dijkstra,Dijkstra 最短路径算法,荷兰语全名是 Edsger Wybe Dijkstra,于 1972 年获得了图灵奖,除了上面说的最短路径算法,还有众所周知的信号量和 PV 原语、银行家算法等也是这位巨佬提出的。 原文在这里:https://www.cs.u
程序员鱼皮
2023/03/29
9040
为什么数组下标从 0 开始?而不是 1?
WCF技术剖析之二十五: 元数据(Metadata)架构体系全景展现[WS标准篇]
元数据实际上是服务终结点的描述,终结点由地址(Address)、绑定(Binding)和契约(Contract)经典的ABC三要素组成。认真阅读过《WCF技术剖析(卷1)》的读者相对会对这三要素的本质有一个深刻的认识:地址决定了服务的位置并实现相应的寻址机制;契约描述了消息交换模式(Message Exchange Pattern: MEP)以及消息的结构(Schema);绑定则通过创建信道栈实现对消息的编码、传输和基于某些特殊的功能(比如实现事务、可靠传输以及基于消息的安全)对消息作出的处理。 服务的消
蒋金楠
2018/01/16
3.1K0
WCF技术剖析之二十五: 元数据(Metadata)架构体系全景展现[WS标准篇]
【WebService】——SOAP、WSDL和UDDI[通俗易懂]
WebService的三要素:SOAP、WSDL和UDDI。soap用来描述传递信息的格式,wsdl描述如何访问具体的接口,uddi管理、分发查询WebService。
全栈程序员站长
2022/09/15
3.8K0
【WebService】——SOAP、WSDL和UDDI[通俗易懂]
soap 返回xml 文件 soap 文件 webservice wsdl
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100557.html原文链接:
全栈程序员站长
2021/05/06
1.3K0
soap和wsdl区别说明
Web Service实现业务诉求:Web Service是真正“办事”的那个,提供一种办事接口的统称。 WSDL提供“能办的事的文档说明”:对要提供的服务的一种描述格式。我想帮你的忙,但是我要告诉你我都能干什么,以及干这些事情需要的参数类型。 SOAP提供“请求”的规范:向服务接口传递请求的格式,包括方法和参数等。你想让人家办事,总得告诉人家你想干什么吧,SOAP就是定义这个“请求”的格式的,按照SOAP定义的“请求”格式“书写”请求就可以保证Web Service能够正确的解读你想让它干什么以及你为它提供了什么参数。在这个请求中,你需要描述的主要问题有:向哪个Web Service发送请求,请求的参数类型、参数值、返回值类型。这些都“填写”完毕,也就完成了符合SOAP规范的SOAP消息。
全栈程序员站长
2022/09/15
1.2K0
漫话:如何给女朋友解释为什么计算机从0开始计数,而不是从1开始?
还有,当我们定义数组的时候,在常见的C语言、Java、Python等语言中,都是使用下标0来表示第一个元素的。
爱敲代码的猫
2020/07/17
1.1K0
漫话:如何给女朋友解释为什么计算机从0开始计数,而不是从1开始?
SOAP 和WSDL 是什么关系?
SOAP(Simple Object Access Protocol) 简单对象访问协议是在分散或分布式的环境中交换信息的简单的协议,是一个基于XML的协议,它包括四个部分:SOAP封装(envelop),封装定义了一个描述消息中的内容是什么,是谁发送的,谁应当接受并处理它以及如何处理它们的框架;SOAP编码规则(encoding rules),用于表示应用程序需要使用的数据类型的实例; SOAP RPC表示(RPC representation),表示远程过程调用和应答的协定;SOAP绑定(binding),使用底层协议交换信息。
全栈程序员站长
2022/09/15
6190
数组是如何随机访问元素?数组下标为什么从0开始,而不是1?
数组(Array)是一种线性表数据结构,它用一组连续的内存空间,来存储相同类型的数据。
搜云库技术团队
2019/10/17
6.3K0
网络协议 20 - RPC 协议(上)- 基于XML的SOAP协议
    上一节我们了解 RPC 的经典模型和设计要点,并用最早期的 ONC RPC 为例子,详述了具体的实现。而时代在进步,ONC RPC 逐渐因为各种问题被替代,SOAP 协议就是替代者之一。
北国风光
2019/04/11
1.3K0
为什么是AUC值而不是GSEA来挑选转录因子呢
通过学习,我们知道这个RcisTarget包内置的motifAnnotations_hgnc是16万行,可以看到每个基因有多个motif。而且下载好的 hg19-tss-centered-10kb-7species.mc9nr.feather 文件,也是 24453个motifs的基因排序信息。但是我们留下来了一个悬念,如何从几万个注释结果里面挑选到最后100个富集成功的motif呢?
生信技能树
2020/12/03
1.2K0
为什么是AUC值而不是GSEA来挑选转录因子呢
快速入门系列--WCF--04元数据和异常处理
本章节将进行元数据和异常处理的介绍,这部分内容概念型比较强,可以快速浏览一下就好。 客户端和服务器借助于终结点进行通信,服务的提供者通过一个或者多个终结点将服务发布出来,服务的消费者则通过创建与之匹
用户1216676
2018/01/24
8220
快速入门系列--WCF--04元数据和异常处理
soap 设置header 添加头元素 webservice wsdl
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100558.html原文链接:
全栈程序员站长
2021/05/06
2.4K0
webservice技术介绍
一言以蔽之:WebService是一种跨编程语言和跨操作系统平台的远程调用技术。
全栈程序员站长
2022/07/22
2K0
PHP调用Webservice实例[通俗易懂]
NuSoap是PHP环境下的WebService编程工具,用于创建或调用WebService。它是一个开源软件,是完全采用PHP语言编写的、通过HTTP收发SOAP消息的一系列PHP类,由NuSphere Corporation(http://dietrich.ganx4.com/nusoap/ )开发。NuSOAP的一个优势是不需要扩展库的支持,这种特性使得NuSoap可以用于所有的PHP环境,不受服务器安全设置的影响。  
全栈程序员站长
2022/09/13
2.6K0
Android技能树 — 网络小结(4)之socket/websocket/webservice
介于自己的网络方面知识烂的一塌糊涂,所以准备写相关网络的文章,但是考虑全部写在一篇太长了,所以分开写,希望大家能仔细看,最好可以指出我的错误,让我也能纠正。
青蛙要fly
2018/08/29
8200
Android技能树 — 网络小结(4)之socket/websocket/webservice
Web Service应用之JAX-WS开发[通俗易懂]
Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。Web Service服务通常被定义为一组模块化的API,它们可以通过网络进行调用,来执行远程系统的请求服务。
全栈程序员站长
2022/09/14
2.4K0
Web Service应用之JAX-WS开发[通俗易懂]
php使用NuSoap产生webservice结合WSDL让asp.net调用
类别:PHP 评论:0 浏览:513 发表时间:2009-09-10 16:59:38
Java架构师必看
2021/03/22
3.3K0
php使用NuSoap产生webservice结合WSDL让asp.net调用
建立自己的Web service(SOAP篇)
  Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。
那一叶随风
2018/08/22
2.3K0
建立自己的Web service(SOAP篇)
关于SOAP调用返回对象的写法 wsdl webservice
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/100560.html原文链接:
全栈程序员站长
2021/05/06
1.4K0
Spring Boot创建和调用WebService接口
“ 使用Spring Boot调用WebService接口是一个项目上的一个需求,甲方要求我们做一个对外的在线测评页面,但是我们公司的产品是在内网下,所以甲方提供一台服务器将一个端口映射到外网,由于仅仅是一个在线测评的功能所以尽可能高效的开发出来,于是Spring Boot便有用武之地了”
每天学Java
2020/06/02
16.7K2

相似问题

如何根据ruby中的WSDL (是的,WSDL而不是XSD)验证SOAP请求

12

在Spring WebService中从WSDL而不是XSD公开Web服务。

10

从XSD/WSDL中识别SOAP方法前缀

14

SOAP/HTTP + WSDL作为契约。那JAX-WS呢?

23

从Spring中的WSDL生成WebService (契约优先)

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文