Spring WS - Übersicht
Spring Web Services (Spring-WS) ist eines der von der Spring Community entwickelten Projekte. Der Hauptfokus liegt auf der Erstellung dokumentengesteuerter Webdienste. Das Spring Web Services-Projekt erleichtert die VertragsabwicklungSOAP Service Developmentbietet mehrere Möglichkeiten zum Erstellen flexibler Webdienste, mit denen XML-Nutzdaten auf verschiedene Arten bearbeitet werden können.
Die Spring-Webdienste verwenden Spring-Konzepte wie Abhängigkeitsinjektion und Konfigurationen nahtlos. Das Spring-WS erfordert die Version Spring 3.0. Mit der Vertragsentwicklung beginnen wir mitWSDL Contract und wird dann JAVA verwenden, um den erforderlichen Vertrag umzusetzen.
Im Gegensatz zum Vertrag-Last-Ansatz, bei dem JAVA-Schnittstellen einen WSDL / XSD-Vertrag generieren. Der WSDL-basierte Vertrag bleibt unabhängig von der JAVA-Implementierung im Contract-First-Ansatz. Wenn wir die JAVA-Schnittstellen ändern müssen, müssen die im bestehenden WSDL-Vertrag vorgenommenen Änderungen den Benutzern der Webdienste nicht mitgeteilt werden. Spring-WS zielt darauf ab, eine lose Kopplung zwischen dem WSDL-Vertrag und seiner JAVA-basierten Implementierung herzustellen.
Eigenschaften
Im Folgenden sind die Funktionen von Spring Web Services aufgeführt:
XML Mapping to Objects - XML-basierte Anforderungen können mithilfe der in der Nachrichtennutzlast, im SOAP-Aktionsheader oder mithilfe eines XPath-Ausdrucks gespeicherten Informationen jedem Objekt zugeordnet werden.
Multiple API Support to parse XML - Neben den Standard-JAXP-APIs (DOM, SAX, StAX) zum Parsen der eingehenden XML-Anforderungen werden auch andere Bibliotheken wie JDOM, dom4j, XOM unterstützt.
Multiple API Support to marshal XML- Spring Web Services unterstützt die Bibliotheken JAXB 1 und 2, Castor, XMLBeans, JiBX und XStream mithilfe des Object / XML Mapping-Moduls. Das Objekt- / XML-Zuordnungsmodul kann auch in Nicht-Webdienstcode verwendet werden.
Spring based configurations - Spring Web Services verwendet die Spring-Anwendungskontexte für seine Konfigurationen mit einer ähnlichen Architektur wie die Spring Web MVC.
Integrated WS-Security module - Mit dem WS-Sicherheitsmodul können Sie SOAP-Nachrichten signieren, verschlüsseln, entschlüsseln oder authentifizieren.
Support for Acegi Security - Mit der WS-Security-Implementierung von Spring Web Services kann die Acegi-Konfiguration für Ihre SOAP-Services verwendet werden.
Die Architektur
Das Spring-WS-Projekt besteht aus fünf Hauptmodulen, die im Folgenden erläutert werden.
Spring-WS Core - Es ist das primäre Modul und bietet die zentralen Schnittstellen wie WebServiceMessage und SoapMessage, das serverseitige Framework, leistungsstarke Funktionen zum Versenden von Nachrichten und Supportklassen zur Implementierung von Webdienstendpunkten. Es bietet auch Web Service Consumer Client alsWebServiceTemplate.
Spring-WS Support - Dieses Modul bietet Unterstützung für JMS, E-Mails usw.
Spring-WS Security- Dieses Modul ist für die Bereitstellung der WS-Security-Implementierung verantwortlich, die in das Kern-Webdienstmodul integriert ist. Mit diesem Modul können wir Haupttoken hinzufügen, SOAP-Nachrichten signieren, verschlüsseln und entschlüsseln. Dieses Modul ermöglicht die Verwendung der vorhandenen Spring Security-Implementierung zur Authentifizierung und Autorisierung.
Spring XML- Dieses Modul bietet XML-Unterstützungsklassen für Spring Web Services. Dieses Modul wird intern vom Spring-WS-Framework verwendet.
Spring OXM - Dieses Modul bietet Unterstützungsklassen für XML vs Object Mapping.