Web Services Description Language: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
→Esempio di documento WSDL 2.0: Migliorato la pagina |
|||
(9 versioni intermedie di 9 utenti non mostrate) | |||
Riga 1:
Il '''Web Services Description Language''' ('''WSDL''') è un [[linguaggio formale]] in formato [[XML]] utilizzato per la creazione di "documenti" per la descrizione di [[Web
== Descrizione ==▼
Mediante WSDL può essere infatti descritta l'[[Interfaccia (informatica)|interfaccia]] pubblica di un Web
Un "documento" WSDL contiene infatti, relativamente al Web service descritto, informazioni su:
▲==Descrizione==
▲Mediante WSDL può essere infatti descritta l'[[Interfaccia (informatica)|interfaccia]] pubblica di un Web Service (ovvero una descrizione basata su XML) che indica come interagire con un determinato servizio: un "documento" WSDL contiene infatti, relativamente al Web Service descritto, informazioni su:
*''cosa'' può essere utilizzato (le "operazioni" messe a disposizione dal servizio)
*''come''
*''dove''
Le operazioni supportate dal Web
Il WSDL è solitamente utilizzato in combinazione con [[SOAP]] e [[XML Schema]] per rendere disponibili Web
▲Le operazioni supportate dal Web Service ed i messaggi che è possibile scambiare con lo stesso sono descritti in maniera astratta e quindi non collegati ad uno specifico [[protocollo di rete]] e ad uno specifico formato.
La versione 1.1 di WSDL non è stata adottata come [[Norma
▲Il WSDL è solitamente utilizzato in combinazione con [[SOAP]] e [[XML Schema]] per rendere disponibili Web Services su [[rete informatica|reti]] aziendali o su [[internet]]: un programma [[client]] può, infatti, "leggere" il documento WSDL relativo ad un Web Service per determinare quali siano le funzioni messe a disposizione sul [[server]] e quindi utilizzare il protocollo SOAP per utilizzare una o più delle funzioni elencate dal WSDL.
Il 26 giugno
▲La versione 1.1 di WSDL non è stata adottata come [[Norma (tecnologia)|standard]] dal [[World Wide Web Consortium]] (W3C).
== Stili e codifiche ==
▲Il 26 giugno [[2007]] la versione 2.0 è stata promossa a standard ufficiale (in forma di "raccomandazione") dal W3C.
Un documento WSDL può essere caratterizzato da quattro distinte combinazioni di stili e codifiche:<ref name="ibm">{{cita web|url=https://www.ibm.com/developerworks/library/ws-whichwsdl/|editore=IBM|autore=Russel Butek|lingua=en|titolo=Which style of WSDL should I use?|data=31 ottobre 2003|accesso=10 settembre 2018|urlarchivio=https://web.archive.org/web/20180823041143/https://www.ibm.com/developerworks/library/ws-whichwsdl/|dataarchivio=23 agosto 2018|urlmorto=no}}</ref><ref>{{cita web|url=http://www.html.it/articoli/wsdl-stili-e-codifiche-4/|titolo=WSDL: stili e codifiche|sito=HTML.it|autore=Marco Parente|urlarchivio=https://web.archive.org/web/20140122231827/http://www.html.it/articoli/wsdl-stili-e-codifiche-4/|dataarchivio=22 gennaio 2014|urlmorto=no}}</ref>
*''RPC/encoded'': ha una struttura molto semplice, ma non è approvato dallo standard [[WS-I]] ed è complesso da validare.
*''RPC/literal'': è di nuovo molto semplice ed è privo di informazioni di codifica sui tipi. Soddisfa inoltre le specifiche WS-I, ma resta complesso da validare.
*''Document/encoded'': non è conforme alle specifiche WS-I e non è praticamente mai utilizzato.
*''Document/literal'': anche qui mancano le informazioni di codifica sui tipi ed è conforme alle specifiche WS-I (con alcune restrizioni). Può inoltre essere facilmente controllato con un [[Validatore (informatica)|validatore]] XML. Tuttavia, la struttura del WSDL diventa più complessa e verbosa. Infine, nel messaggio SOAP non è prevista l'indicazione del metodo utilizzato, per cui può risultare più complesso (o impossibile) capire quale operazione è richiesta dal client.
== Esempio di documento WSDL 2.0 ==
<
<?xml version="1.0" encoding="UTF-8"?>
<description xmlns="http://www.w3.org/ns/wsdl"
Line 125 ⟶ 135:
</service>
</description>
</syntaxhighlight>
== Note ==
<references/>
== Voci correlate ==
Line 131 ⟶ 144:
*[[SOAP]]
*[[UDDI]]
*[[Web Application Description Language]]
*[[Business Process Execution Language]]
== Collegamenti esterni ==
* {{
* {{
* {{
* {{
* {{
* {{
* {{
{{Portale|internet}}
|