SOAP e REST

due tipi di Web Services:

WS SOAP

usano XML e gli standard SOAP e WSDL

WS REST

comunicano con il protocollo HTTP

senza usare SOAP nè WSDL (non è standard)

adatti per gli scenari di integrazione più semplici.

un’infrastruttura più leggera dei web services SOAP

(REpresentational State Transfer)

si affida a protocollo di comunicazione

stateless

(ad ogni query : corrisponde una singolarisposta . Nel caso di fallimento si ricomincia dacapo )

client-server

cacheable

(Simple Object Application Protocol)

protocollo standardizzato da W3C

definisce modalità rappresentazione

interfacce

chiamate

informazioni in formato XML

WSDL

(Web Service Definition Language)

definire le interfacce (contratti)

SOAP Request e SOAP Response

messaggi XML per definire le chiamate e le risposte ai servizi web

XSD

(XML Scheda Definition)

definisce le informazioni che vengono trasportate dai messaggi.

Tecnologia JAX-WS – Java API for XML-Web Services

XML

sostiene l’indipendenza dei vari standard per WS dalla piattaforma e dai linguaggi di programmazione

documento XML descrive funzioni e parametri di un Web Service.

Mediante WSDL

informazioni su:

cosa può essere utilizzato

come utilizzarlo

ovvero i "vincoli" (bindings) del servizio;

dove utilizzare il servizio

endpoint del servizio

operazioni messe a disposizione dal servizio

dentro sono descritte

"operazioni" messe a disposizione dal servizio

protocollo di comunicazione da utilizzare per accedere al servizio

formato messaggi accettati in input

output restituiti e il loro formato

endpoint di ogni funzione

elementi principali che lo compongono

types

definisce i tipi di dato che possono essere scambiati tra client e web service

message

messaggi che possono essere scambiati tra il web service e i client

portType

punti di connessione verso il web service

binding

descrive un’operazione esposta dal servizio web con gli elementi in input, output ed i loro vincoli

service

descrizione testuale del servizio

Caratteristiche:

interfacce dei servizi web sono dette RESTful.

Ha un URI (Uniform Resource Identifier) di base

Rappresenta le informazioni usando un tipo di media (MediaType), tipo di dati che un metodo del servizio è in grado di elaborare

Utilizza i metodi HTTP standard

per determinare il tipo di azione da eseguire sulla risorsa

Tecnologia JAX-RS

Java API for RESTful Web Services

JSON(Javascript Object Notation) è usato per la rappresentazione delle risorse e dei loro stati.