Spring WS - przegląd

Spring Web Services (Spring-WS) to jeden z projektów opracowanych przez Spring Community. Jego głównym celem jest tworzenie usług internetowych opartych na dokumentach. Projekt Spring Web Services ułatwia zawieranie umówSOAP Service Development, zapewnia wiele sposobów tworzenia elastycznych usług internetowych, które mogą manipulować ładunkami XML na wiele sposobów.

Usługi sieciowe Spring bezproblemowo wykorzystują koncepcje Spring, takie jak iniekcja zależności i konfiguracje. Spring-WS wymaga wersji Spring 3.0. Zaczynamy od rozwoju opartego na kontrakcieWSDL Contract a następnie użyje JAVA do wykonania wymaganej umowy.

W przeciwieństwie do podejścia opartego na ostatniej umowie, w którym interfejsy JAVA generują kontrakt WSDL / XSD. Kontrakt oparty na WSDL pozostaje niezależny od implementacji JAVA w podejściu „najpierw kontrakt”. W przypadku, gdy wymagamy zmiany interfejsów JAVA, nie ma potrzeby komunikowania zmian wprowadzonych w istniejącym kontrakcie WSDL użytkownikom usług internetowych. Spring-WS ma na celu zapewnienie luźnego powiązania między kontraktem WSDL a jego implementacją opartą na JAVA.

funkcje

Oto funkcje Spring Web Services -

  • XML Mapping to Objects - Żądania oparte na XML mogą być mapowane na dowolny obiekt przy użyciu informacji przechowywanych w Message Payload, SOAP Action Header lub przy użyciu XPath Expression.

  • Multiple API Support to parse XML - Oprócz standardowych API JAXP (DOM, SAX, StAX) do parsowania przychodzących żądań XML, obsługiwane są także inne biblioteki, takie jak JDOM, dom4j, XOM.

  • Multiple API Support to marshal XML- Spring Web Services obsługuje biblioteki JAXB 1 i 2, Castor, XMLBeans, JiBX i XStream przy użyciu modułu mapowania obiektów / XML. Moduł mapowania obiektów / XML może być również używany w kodzie usług innych niż sieci Web.

  • Spring based configurations - Spring Web Services używa Spring Application Contexts dla swoich konfiguracji o podobnej architekturze jak Spring Web MVC.

  • Integrated WS-Security module - Za pomocą modułu WS-Security możesz podpisywać, szyfrować, odszyfrowywać wiadomości SOAP lub uwierzytelniać je.

  • Support for Acegi Security - Korzystając z implementacji WS-Security usług Spring Web Services, konfiguracja Acegi może być używana dla usług SOAP.

Architektura

Projekt Spring-WS składa się z pięciu głównych modułów, które wyjaśniono poniżej.

  • Spring-WS Core - Jest to podstawowy moduł i zapewnia centralne interfejsy, takie jak WebServiceMessage i SoapMessage, struktura po stronie serwera, potężne możliwości wysyłania wiadomości i klasy wsparcia do implementacji punktów końcowych usług sieci Web. Zapewnia również klienta konsumenta usługi sieci Web jakoWebServiceTemplate.

  • Spring-WS Support - Ten moduł zapewnia obsługę JMS, e-maili itp.

  • Spring-WS Security- Ten moduł jest odpowiedzialny za zapewnienie implementacji WS-Security zintegrowanej z podstawowym modułem usług sieciowych. Za pomocą tego modułu możemy dodawać główne tokeny, podpisywać, szyfrować i odszyfrowywać komunikaty SOAP. Moduł ten pozwala na wykorzystanie istniejącej implementacji Spring Security do uwierzytelniania i autoryzacji.

  • Spring XML- Ten moduł udostępnia klasy obsługi XML dla Spring Web Services. Ten moduł jest używany wewnętrznie przez framework Spring-WS.

  • Spring OXM - Ten moduł zapewnia obsługę klas XML vs Object Mapping.