概述

优质
小牛编辑
134浏览
2023-12-01

Spring Web Services(Spring-WS)是Spring社区开发的项目之一。 其主要重点是创建文档驱动的Web服务。 Spring Web Services项目促进了契约优先的SOAP Service Development ,提供了多种创建灵活Web服务的方法,可以通过多种方式处理XML有效负载。

Spring Web服务无缝地使用依赖注入和配置等Spring概念。 Spring-WS需要Spring 3.0版本。 通过契约优先开发,我们从WSDL Contract开始,然后使用JAVA来实现所需的合同。

与JAVA接口生成WSDL/XSD契约的契约最后方法相反。 基于WSDL的合同在合同优先方法中仍然独立于JAVA实施。 如果我们需要更改JAVA接口,则无需将现有WSDL合同中所做的更改传达给Web服务用户。 Spring-WS旨在提供WSDL契约与基于JAVA的实现之间的松散耦合。

特点 (Features)

以下是Spring Web Services的功能 -

  • XML Mapping to Objects - 可以使用Message Payload,SOAP Action Header中存储的信息或使用XPath Expression将基于XML的请求映射到任何对象。

  • Multiple API Support to parse XML - 除了用于解析传入XML请求的标准JAXP API(DOM,SAX,StAX)之外,还支持其他库,如JDOM,dom4j,XOM。

  • Multiple API Support to marshal XML - Spring Web Services使用其Object/XML Mapping模块支持JAXB 1和2,Castor,XMLBeans,JiBX和XStream库。 Object/XML Mapping模块也可以用在非Web服务代码中。

  • Spring based configurations - Spring Web Services将Spring Application Contexts用于具有与Spring Web MVC类似的体系结构的配置。

  • Integrated WS-Security module - 使用WS-Security模块,您可以签名,加密,解密SOAP消息或对其进行身份验证。

  • Support for Acegi Security - 使用Spring Web Services的WS-Security实现,Acegi配置可用于您的SOAP服务。

结构 (Architecture)

Spring-WS项目由五个主要模块组成,下面将对其进行说明。

  • Spring-WS Core - 它是主要模块,提供WebServiceMessageSoapMessage等中央接口,服务器端框架,强大的消息调度功能以及实现Web服务端点的支持类。 它还提供Web Service使用者客户端作为WebServiceTemplate

  • Spring-WS Support - 该模块为JMS,电子邮件等提供支持。

  • Spring-WS Security - 该模块负责提供与核心Web服务模块集成的WS-Security实现。 使用此模块,我们可以添加主要令牌,签名,加密和解密SOAP消息。 此模块允许使用现有的Spring Security Implementation进行身份验证和授权。

  • Spring XML - 此模块为Spring Web Services提供XML支持类。 该模块由Spring-WS框架内部使用。

  • Spring OXM - 此模块提供XML与对象映射的支持类。

Spring Web服务架构

最后更新:

类似资料

  • 概述 国际化和本地化的目的就是让一个网站应用能做到根据用户语种和指定格式的不同而提供不同的内容。 Django 对文本翻译, 日期、时间和数字的格式化,以及时区提供了完善的支持。 实际上,Django做了两件事: 由开发者和模板作者指定应用的哪些部分应该翻译,或是根据本地语种和文化进行相应的格式化。 根据用户的偏好设置,使用钩子将web应用本地化。 很显然,翻译取决于用户所选语言,而格式化通常取决

  • 虽然Django 满满的便捷性让Web 开发人员活得轻松一些,但是如果不能轻松地部署你的网站,这些工具还是没有什么用处。Django 起初,易于部署就是一个主要的目标。有许多优秀的方法可以轻松地来部署Django: 如何使用WSGI 部署 部署的检查清单 FastCGI 的支持已经废弃并将在Django 1.9 中删除。 如何使用FastCGI、SCGI 和AJP 部署Django 如果你是部署D

  • 本书概述 进程的概念大家都很熟悉,但你是否能准确说出僵尸进程的含义呢?还有 COW(Copy On Write)、Flock(File Lock)、Epoll 和 Namespace 的概念又是否了解过呢? 本书汇集了进程方方面面的基础知识,加上编程实例,保证阅读后能自如地回答以上问题,在项目开发中对进程的优化也有更深的理解。 本书架构 本书按循序渐进的方式介绍进程的基础概念和拓展知识,主要涵盖以

  • Docker在1.12.0和以上版本中增加了swarm模式。通过swarm模式管理的Docker Engines集群称之为“Swarm”。并可以通过Docker CLI来创建Swarm,在Swarm中部署应用服务,以及管理Swarm。 功能特点 在Docker Engines中集成了集群管理功能:通过Docker CLI可以创建一个用来发布应用services的swarm,而不需要安装其他任何额外

  • 这是 Elasticsearch 官方的 PHP 客户端。我们把 Elasticsearch-PHP 设计成低级客户端(低级设计模式),使用时不会偏离 REST API 的用法。 客户端所有方法几乎都与 REST API 对应,而且也与其他编程语言的客户端(如 ruby, python 等)方法结构相似。我们希望这种对应方式可以方便开发者更加容易上手客户端,且以最小的代价快速从一种编程语言转换到另

  • 特点 为什么用 Groovy?