close

Limbajul de descriere a aplicației web

Salt la navigare Salt la căutare

Limbajul de descriere a aplicației web ( WADL ) este un limbaj formal în format XML utilizat pentru crearea „documentelor” pentru descrierea serviciilor web bazate pe HTTP . [1] Scopul WADL este de a simplifica și încuraja reutilizarea serviciilor Web bazate pe arhitecturi HTTP care există deja pe Web. [1] [2]

WADL a fost adus în atenția World Wide Web Consortium de către Sun Microsystems pe 31 august 2009, [1] dar W3C nu intenționează încă să-l standardizeze. [2] Limbajul este echivalentul RESTful al limbajului de descriere a serviciilor web (WSDL) al serviciilor web SOAP , care poate fi folosit și pentru a descrie serviciile REST. [3]

Format

Serviciul este descris folosind un set de elemente de resurse („resurse”). Fiecare dintre aceste resurse conține elemente de metodă (în care poate fi specificată metoda HTTP ), care la rândul lor constau dintr-o cerere și unul sau mai multe răspunsuri . Elementul de solicitare specifică modul în care este reprezentată intrarea în metodă, ce tipuri de date sunt necesare și orice antete HTTP necesare. Elementul de răspuns descrie rezultatul serviciului Web, inclusiv răspunsurile de eroare așteptate.

Exemplu

Mai jos este un exemplu de descriere WADL pentru aplicația Yahoo News Search, preluată din transmiterea Sun Microsystems către W3C. [1]

 <application  xmlns: xsi = "http://www.w3.org/2001/XMLSchema-instance"  
  xsi: schemaLocation = "http://wadl.dev.java.net/2009/02 wadl.xsd"  
  xmlns: tns = "urn: yahoo: yn"  
  xmlns: xsd = "http://www.w3.org/2001/XMLSchema"  
  xmlns: yn = "urn: yahoo: yn"  
  xmlns: ya = "urn: yahoo: api"  
  xmlns = "http://wadl.dev.java.net/2009/02" >  
   <grammars>  
     <include  
       href = "NewsSearchResponse.xsd" />  
     <include  
       href = "Error.xsd" />  
   </grammars> 
 
   <resources  base = "http://api.search.yahoo.com/NewsSearchService/V1/" >  
     <  calea resursei = "newsSearch" >  
       <method  name = "GET"  id = "search" >  
         <request>  
           <param  name = "appid"  tip = "xsd: șir"  
             stil = "interogare"  necesar = "adevărat" />  
           <param  name = "interogare"  tip = "xsd: șir"  
             stil = "interogare"  necesar = "adevărat" />  
           < nume param  = "tip"  stil = "interogare"  implicit = "toate" >  
             <opțiune  valoare = "toate" />  
             <opțiune  valoare = "orice" />  
             <opțiune  valoare = "frază" />  
           </param>  
           <param  nume = "rezultate"  stil = "interogare"  tip = "xsd: int"  implicit = "10" />  
           <param  name = "start"  stil = "interogare"  tip = "xsd: int"  implicit = "1" />  
           <param  name = "sort"  style = "query"  default = "rank" >  
             <option  value = "rank" />  
             <option  value = "date" />  
           </param>  
           <param  name = "language"  style = " interogare "  type = " xsd: șir " />  
         </request>  
         <response  status = " 200 " >  
           <representation  mediaType = " application / xml "  
             element = " yn: ResultSet " />  
         </response>  
         <response  status = " 400 " >  
           <representation  mediaType = " application / xml "  
             element = " ya: Error " />  
         </response>  
       </method>  
     </resource>  
   </ return urces> 
 </application>

Instrumente

Java

Există diverse instrumente pentru a genera cod Java dintr-o descriere WADL existentă (sau invers): [4] [5]

  • Apache CXF
  • API Java pentru servicii web RESTful

Note

  1. ^ a b c d Marc Hadley, Sun Microsystems , Limba de descriere a aplicației web: W3C Member Submission 31 august 2009 , pe w3.org , World Wide Web Consortium , 31 august 2009. Recuperat la 12 august 2012 .
  2. ^ a b World Wide Web Consortium , Comentariu de echipă la trimiterea „Web Application Description Language” , pe w3.org , World Wide Web Consortium , 14 octombrie 2009. Recuperat la 12 august 2012 .
  3. ^ Lawrence Mandel, Describe REST Web services with WSDL 2.0: A how-to guide , ibm.com , IBM , 29 mai 2008. Recuperat la 12 august 2012 .
  4. ^ proiectul WADL java.net
  5. ^ Apache CXF

Articole înrudite

Link- uri externe