SPRING WS – TUTORIAL 10 – USARE LA VERSIONE 2.0

La versione 2.0 di Spring-ws introduce la dipendenza da Spring 3.0 e spinge verso l’uso delle annotation, lasciando il supporto deprecato delle classi che abbiamo imparato a conoscere nei precedenti articoli-

In questo articolo vedremo le nuove feature introdotte da Spring-ws.

Partiamo dalla creazione del progetto, che si avvale dei nuovi archetipi rilasciati da spring-ws e vediamo come creare il solito webservice per la libreria.

Con la direttiva indicata Spring-ws crea la directory libreriaservice

Spostiamoci all’interno della cartella e creaiamo la struttura per il nostro IDE tramite la direttiva mvn eclipse:eclipse. A questo punto possiamo importare il progetto in Eclipse. Come si può notare nel file xml associato al dispatchet spring-servlet.xml è stata esplicitata la dipendenza dalle annotation, tramite il tag <sws:annotation-driven/>

Recuperiamo lo schema xsd che abbiamo creato nei precedenti articoli e lo copiamo sotto la cartella resources.

Definiamo  il bean che si occupa della generazione del wsdl tramite il seguente tag

A questo punto definiamo l’endpoint che si preoccupa di gestire il servizio di Ricerca Libro. Nella definizione degli endpoint si cambia approccio, mentre prima il mapping veniva gestito tramite file xml, adesso tutto è demandato alle annotation:

l’annotazione @Endpoint definisce che una classe è un endpoint

l’annotazione @Autowired definisce il costruttore della costruttore qualora sia necessario fare l’injection di alcuni parametri

l’annotazione @PayloadRoot(localPart = “RicercaLibroRequest”, namespace = “http://finazzo.it/libreria/schema”) definisce la regola di mapping dell’endpoint

Una volta definiti gli endpoint passiamo alla definizione del mapping degli endpoint, tramite la classe PayloadRootAnnotationMethodEndpointMapping

Questa è la classe responsabile di instradare i messaggi verso l’opportuno endpoint in base all’analisi del messaggi soap ricevuti e le regole definite di attivazione definite tramite annotation.

Qui trovate l’archetipo estratto dal progetto appena descritto, in modo da poter provare di persona quanto fatto.