Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ

gjuha wsdl. Kam shkruar më parë për

Pasi më vunë detyrën për të filluar zhvillimin e shërbimeve të internetit dhe më dhanë burimet e një projekti të thjeshtë pa asnjë shpjegim. Projekti, natyrisht, nuk filloi. Unë gjithashtu nuk e kisha idenë se çfarë ishte Pranvera dhe si funksiononte. Gjithashtu nuk munda të gjeja artikuj adekuat për zhvillimin e shërbimeve të ueb-it duke përdorur Spring, qoftë në rusisht apo në anglisht. Më duhej ta kuptoja vetë, por doli që nuk ishte aq e frikshme.
Dhe së fundmi vendosa të shikoj se cilat veçori të reja janë shtuar në Spring që atëherë dhe të përditësoj shërbimet e vjetra, të cilat si rezultat më shtynë të shkruaj këtë artikull.

Ky artikull është një udhëzues për zhvillimin e një shërbimi të thjeshtë Web duke përdorur protokollin SOAP duke përdorur Spring-WS.

Dhe kështu, ne do të shkruajmë shërbimi më i thjeshtë, i cili merr emrin e përdoruesit dhe dërgon një përshëndetje dhe orën aktuale në server.

Çfarë na duhet?
  • IDE. Unë jam duke përdorur Eclipse.
Përgatitja për punë
Ne krijojmë projekt i ri Ueb aplikacionet. Në Eclipse është: "File => New => Dynamic Web Project".
E quajta projektin: HelloService.
Më pas, kopjoni bibliotekat nga Spring, XMLBean, wsdl4j, Commons-logging në direktorinë e projektit WEB-INF/lib.
Nëse dëshironi, mund t'i shtoni ato në bibliotekat e serverëve në mënyrë që të mos i bartni me secilin aplikacion.
Krijimi i një skeme WSDL
Në thelb, një skemë WSDL është krijuar për të përshkruar një shërbim.
Sigurisht, ne nuk do ta krijojmë atë me dorë. Skema do të gjenerohet automatikisht duke përdorur Spring, por më shumë për këtë më vonë.
Përcaktimi i të dhënave hyrëse dhe dalëse
Fut te dhenat:
  • Emri i vargut.
Prodhimi:
  • Përshëndetje me varg;
  • Koha është koha aktuale.
Krijimi i një përshkrimi të të dhënave hyrëse dhe dalëse
Në drejtorinë WEB-INF, krijoni skedarin HelloService.xsd. Ky skedar do të nevojiten për të gjeneruar skemën WSDL dhe për të krijuar klasat përkatëse Java.
Teksti i skedarit:

atribut hapësira e emrave të synuar– hapësira e emrit të përdorur. Ato. të gjitha objektet e krijuara do të vendosen në paketën org.example.helloService.
Elementet Kërkesë për shërbim Dhe Shërbimi Përgjigje përshkruani përkatësisht të dhënat hyrëse dhe dalëse (kërkesa/përgjigja).
Atributet min Ndodh Dhe maxNdodh përcaktoni numrin e përsëritjeve të një komponenti të caktuar brenda një elementi. Nëse këto parametra nuk janë specifikuar, atëherë si parazgjedhje ato konsiderohen të barabarta me 1. Për një komponent opsional, duhet të specifikoni minOccurs=0. Me një numër të pakufizuar komponentësh: maxOccurs=i pakufizuar.
Mund të lexoni më shumë rreth skemave XML.
Krijimi i JavaBeans
Bazuar në skemën e krijuar, ne do të krijojmë klasa Java. Për ta bërë këtë, krijoni një skedar build.xml:

Parametri WS_HOME duhet të tregojë në drejtorinë ku ndodhet XMLBeans.
HelloService.xsd– rruga drejt qarkut të krijuar.
lib\helloservice.jar– krijoi bibliotekën java.

Më pas, ekzekutoni Ant-build (shpresoj ta keni instaluar tashmë).
Në Eclipse mund ta ekzekutoni si kjo: RMB në skedarin build.xml => Run As => Ant Build.
Nëse përmes linja e komandës:
ant -buildfile build.xml
Epo, ne presim të përfundojë ndërtimi. Pas kësaj, ne mund të kontrollojmë direktorinë e projektit WEB-INF\lib për praninë e bibliotekës përkatëse (helloservice.jar).

Zbatimi i shërbimit
Krijoni një ndërfaqe dhe klasë shërbimi
Ndërfaqja e shërbimit: HelloService.java:
paketë org.shembull; import java.util.Calendar; ndërfaqja publike HelloService ( String publik getHello (emri i vargut) hedh Përjashtim; Kalendari publik getCurrentTime(); )
Zbatimi i shërbimit: HelloServiceImpl.java:
paketë org.shembull; import java.util.Calendar; import org.springframework.stereotip.Service; Klasa publike @Service HelloServiceImpl zbaton HelloService ( String publik getHello(emri i vargut) hedh Përjashtim ( kthen "Përshëndetje, " + emër + "!"; ) Kalendari publik getCurrentTime() (kthim Calendar.getInstance(); ) )
Ky kod, mendoj, nuk ka nevojë për komente. E vetmja gjë që mund të ngrejë pyetje për njerëzit që nuk e kanë hasur më parë Pranverën është shënimi i shërbimit @. Por unë do t'ju tregoj për këtë pak më vonë.
Pika e fundit
Endpoint – një klasë që do të jetë përgjegjëse për përpunimin e kërkesave hyrëse (një lloj pike hyrëse).

Krijo skedarin HelloServiceEndpoint.java:
paketë org.shembull; import org.springframework.beans.factory.annotation.Autowired; importoni org.springframework.ws.server.endpoint.annotation.Endpoint; importoni org.springframework.ws.server.endpoint.annotation.PayloadRoot; importoni org.example.helloService.ServiceRequestDocument; importoni org.example.helloService.ServiceRequestDocument.ServiceRequest; importoni org.example.helloService.ServiceResponseDocument; importoni org.example.helloService.ServiceResponseDocument.ServiceResponse; Klasa publike @Endpoint HelloServiceEndpoint( private static fund String namespaceUri = "http://www.example.org/HelloService"; privat HelloService helloService; @Autowired publik void HelloService (HelloService helloService) ( this.helloService = helloService; localPart = "ServiceRequest", namespace = namespaceUri) publike ServiceResponseDocument getService(ServiceRequestDocument kërkesë) hedh Përjashtim ( ServiceRequestDocument reqDoc = kërkesë; ServiceRequest req = reqDoc.getServiceRequest( =);ServiceResponseDocument. sponse resp = respDoc. addNewServiceResponse();Emri i përdoruesit të vargut = req.getName(); String helloMessage = testNewService.getHello(emri i përdoruesit); Kalendari aktualTime = testNewService.getCurrentTime(); resp.setHello(helloMessage); resp.setCurrentTime;resp.setCurrent); )
Çfarë është bërë këtu?
shënim @Pika e fundit ajo thjesht përcakton që kjo klasë do të përpunojë kërkesat hyrëse.
hapësira e emraveUri– e njëjta hapësirë ​​emri siç specifikohet gjatë krijimit të skemës xml.

Tani le të kthehemi pak prapa dhe të kujtojmë shënimin @Shërbimi. Pa hyrë në detaje për të mos e mbingarkuar lexuesin me informacione të panevojshme, ky shënim i thotë Pranverës të krijojë objektin e duhur. Dhe shënimi @Autowired shërben për injeksion ( zëvendësim automatik) të objektit përkatës. Sigurisht, kur ndërtoni aplikacione të thjeshta, nuk ka kuptim të përdorni këto shënime, por megjithatë vendosa të mos i përjashtoj ato në këtë shembull.

Pjesa tjetër, përsëri, gjithçka duhet të jetë e qartë. Ju lutemi vini re se Kërkesa për Shërbimin, Përgjigjja e Shërbimit, etj. – këto janë pikërisht klasat që u krijuan bazuar në skemën tonë xml.

Konfigurimi i shërbimit pranveror
Fundi tani po afrohet.
Krijo skedarin service-ws-servlet.xml.

sws:annotation-driven- thotë pikërisht se në këtë projekt përdoren shënime.
A kontekst:komponent-skanim tregon paketën në të cilën do të kërkohen shënimet dhe kërkimi do të kryhet gjithashtu në nënpaketa.

Dy koshat e mëpasshëm do të jenë gjithmonë të pandryshuar. Thelbi i tyre është të marrin dhe konvertojnë një kërkesë nga Xml në një objekt Java dhe një konvertim të mëtejshëm të kundërt.

sws:dynamic-wsdl eshte pergjegjes per gjenerimi automatik Dokumenti WSDL i bazuar në skemën e krijuar XML.
vendndodhjen tregon rrugën drejt skemës.
vendndodhjaUri– adresën (në lidhje me kontejnerin) ku do të jetë e disponueshme skema WSDL.
Në rastin tim, WSDL është në dispozicion në adresën e mëposhtme:
localhost/HelloService/HelloService.wsdl

Përshkruesi i vendosjes
Dhe në fund, gjëja e fundit.
Në direktorinë WEB-INF ne ndryshojmë ose krijojmë skedarin web.xml.
Përshëndetje Shërbimi Përshëndetje Shërbimi shërbim-ws org.springframework.ws.transport.http.MessageDispatcherServlet transformWsdlVendndodhjet e vërtetë shërbim-ws /*
Nuk do ta përshkruaj më këtë skedar; shumica e njerëzve duhet ta dinë tashmë. Për projekte të thjeshta, në thelb nuk duhet të ndryshojë. Vlen vetëm të theksohet se emri servlet (servlet-name) duhet të përputhet me emrin e skedarit të konfigurimit të shërbimit Spring shërbim-ws-servlet.xml.
Kontrolli i funksionalitetit
Shenja e parë funksionimin e duhurështë skema e krijuar WSDL.
Për të kontrolluar, thjesht shkoni në adresën e kësaj skeme (http://localhost/HelloService/HelloService.wsdl) dhe shikoni: skedari xml duhet të shfaqet atje. Nëse nuk shfaqet asgjë ose shfaqet ndonjë gabim, rilexoni me kujdes të gjithë artikullin dhe kërkoni atë që kemi bërë gabim.

Për testim të mëtejshëm na duhet soapUI (kam versionin 3.0.1).
Instaloni dhe lansoni atë.
Krijo një projekt të ri: Skedari => Projekti i ri soapUI. Në fushën Initial WSDL/WADL, futni një lidhje me skemën WSDL (http://localhost/HelloService/HelloService.wsdl).
Në projektin e krijuar, hapni kërkesën e kërkuar.

Fusni emrin në fushën Emri dhe klikoni në butonin "Dërgo kërkesë".


Si rezultat, ne marrim një përgjigje nga serveri me një përshëndetje dhe orën aktuale.


Nëse diçka shkon keq, atëherë rilexoni këtë artikull përsëri.

Ç'pritet më tej?
Epo, hapi tjetër është të shkruani një klient për këtë shërbim Web. Por ky është tashmë material për një artikull tjetër, i cili mund të shkruhet më vonë, nëse këtë material dikush do të jetë i interesuar.

Titulli i temës është vërtet një pyetje, sepse... Unë vetë nuk e di se çfarë është dhe për herë të parë do të përpiqem të punoj me të në kuadrin e këtij artikulli. E vetmja gjë që mund të garantoj është se kodi i paraqitur më poshtë do të funksionojë, por frazat e mia do të jenë vetëm supozime dhe supozime se si unë vetë e kuptoj gjithë këtë. Pra, le të shkojmë ...

Prezantimi

Duhet të fillojmë me arsyen pse u krijua koncepti i shërbimeve në internet. Në kohën kur ky koncept u shfaq në botë, tashmë ekzistonin teknologji që lejonin aplikacionet të ndërveprojnë në distancë, ku një program mund të thërriste një metodë në një program tjetër, i cili mund të lansohej në një kompjuter të vendosur në një qytet apo edhe një vend tjetër. E gjithë kjo shkurtohet si RPC (Remote Procedure Calling). Shembujt përfshijnë teknologjitë CORBA, dhe për Java - RMI (Remote Method Invoking). Dhe gjithçka duket të jetë mirë tek ata, veçanërisht në CORBA, sepse... Mund të punoni me të në çdo gjuhë programimi, por diçka ende mungonte. Unë besoj se disavantazhi i CORBA është se funksionon përmes disa të vetave protokollet e rrjetit në vend të HTTP të thjeshtë, i cili do të kalojë nëpër çdo mur zjarri. Ideja e shërbimit në internet ishte krijimi i një RPC që do të futej në paketat HTTP. Kështu filloi zhvillimi i standardit. Cilat janë konceptet bazë të këtij standardi:
  1. SAPUNI. Përpara se të telefononi një procedurë në distancë, duhet ta përshkruani këtë thirrje në një skedar XML në formatin SOAP. SOAP është thjesht një nga shënjimet e shumta XML që përdoren në shërbimet e internetit. Gjithçka që duam të dërgojmë diku përmes HTTP, fillimisht konvertohet në një përshkrim XML SOAP, më pas futet në një paketë HTTP dhe dërgohet në një kompjuter tjetër në rrjet nëpërmjet TCP/IP.
  2. WSDL. Ekziston një shërbim në internet, d.m.th. një program metodat e të cilit mund të thirren nga distanca. Por standardi kërkon që ky program të shoqërohet me një përshkrim që thotë se "po, keni të drejtë - ky është me të vërtetë një shërbim në internet dhe ju mund të quani metoda të tilla dhe të tilla prej tij". Ky përshkrim përfaqësohet nga një skedar tjetër XML, i cili ka një format të ndryshëm, domethënë WSDL. Ato. WSDL është thjesht një skedar XML që përshkruan një shërbim në internet dhe asgjë më shumë.
Pse kaq shkurt pyet? Nuk mund të jeni më konkret? Ndoshta është e mundur, por për ta bërë këtë do t'ju duhet t'i drejtoheni librave të tillë si T. Mashnin, "Java Web Services". Atje për 200 të parat faqet shkojnë një përshkrim të detajuar të çdo etikete të standardeve SOAP dhe WSDL. A ia vlen të bëhet? Sipas mendimit tim, jo, sepse ... e gjithë kjo krijohet automatikisht në Java, dhe ju duhet vetëm të shkruani përmbajtjen e metodave që supozohet të thirren nga distanca. Pra, një API si JAX-RPC u shfaq në Java. Nëse dikush nuk e di, kur thotë se Java ka një API të tillë, do të thotë se ekziston një paketë me një grup klasash që përmbledhin teknologjinë në fjalë. JAX-RPC evoluoi me kalimin e kohës nga versioni në version dhe përfundimisht u bë JAX-WS. WS padyshim qëndron për WebService dhe ju mund të mendoni se ky është thjesht një riemërtim i RPC si një fjalë popullore këto ditë. Kjo nuk është e vërtetë, sepse Tani shërbimet e uebit janë larguar nga ideja origjinale dhe ju lejojnë jo vetëm të telefononi metoda në distancë, por edhe thjesht të dërgoni mesazhe dokumentesh në formatin SOAP. Nuk e di pse kjo është ende e nevojshme; nuk ka gjasa që përgjigjja këtu të jetë "vetëm në rast se është e nevojshme". Unë vetë do të doja të mësoja nga shokë më me përvojë. Dhe së fundi, atëherë JAX-RS u shfaq për të ashtuquajturat shërbime në internet RESTful, por kjo është tema e një artikulli të veçantë. Prezantimi mund të përfundojë këtu, sepse... Më pas do të mësojmë të punojmë me JAX-WS.

Qasje e përgjithshme

Në shërbimet e internetit ka gjithmonë një klient dhe një server. Serveri është shërbimi ynë në ueb dhe nganjëherë quhet pika përfundimtare (si p.sh. pika e fundit, ku mbërrijnë mesazhet SOAP nga klienti). Duhet të bëjmë sa vijon:
  1. Përshkruani ndërfaqen e shërbimit tonë të internetit
  2. Zbatoni këtë ndërfaqe
  3. Nisni shërbimin tonë të internetit
  4. Shkruani një klient dhe telefononi në distancë metodën e dëshiruar të shërbimit në internet
Shërbimi në internet mund të hapet menyra te ndryshme: ose përshkruani një klasë me një metodë kryesore dhe ekzekutoni shërbimin e uebit drejtpërdrejt si një server, ose vendoseni atë në një server si Tomcat ose ndonjë tjetër. Në rastin e dytë, ne nuk e lëshojmë veten server i ri dhe ne nuk hapim një port tjetër në kompjuter, por thjesht i themi kontejnerit të servletit Tomcat se "ne kemi shkruar klasa të shërbimit të uebit këtu, ju lutemi publikojini ato në mënyrë që të gjithë ata që ju kontaktojnë të mund të përdorin shërbimin tonë të internetit". Pavarësisht nga mënyra e nisjes së shërbimit të ueb-it, ne do të kemi të njëjtin klient.

Serveri

Le të hapim IDEA dhe të krijojmë një projekt të ri Krijo projekt të ri. Le të tregojmë emrin HelloWebService dhe shtypni butonin Tjetra, pastaj butonin Përfundo. Në dosje src le të krijojmë një paketë ru.javarush.ws. Në këtë paketë ne do të krijojmë ndërfaqen HelloWebService: paketë ru. javarush. ws; // këto janë shënime, d.m.th. një mënyrë për të shënuar klasat dhe metodat tona, // në lidhje me teknologjinë e shërbimit në internet import javax. jws. WebMethod; import javax. jws. WebService; import javax. jws. sapun. Lidhja SOAP; // ne themi se ndërfaqja jonë do të funksionojë si një shërbim në internet@WebService // themi se shërbimi në internet do të përdoret për të thirrur metoda Ndërfaqja publike @SOAPBinding (style = SOAPBinding. Style. RPC) HelloWebService ( // themi se kjo metodë mund të thirret nga distanca@WebMethod String publik getHelloString(emri i vargut) ; ) Në këtë kod, klasat WebService dhe WebMethod janë të ashtuquajturat shënime dhe nuk bëjnë asgjë përveçse shënojnë ndërfaqen tonë dhe metodën e saj si një shërbim ueb. E njëjta gjë vlen edhe për klasën SOAPBinding. I vetmi ndryshim është se SOAPBinding është një shënim me parametra. NË në këtë rast parametri i stilit përdoret me një vlerë që tregon se shërbimi në internet nuk do të funksionojë përmes mesazheve të dokumentit, por si një RPC klasik, d.m.th. për të thirrur një metodë. Le të zbatojmë logjikën tonë të ndërfaqes dhe të krijojmë një klasë HelloWebServiceImpl në paketën tonë. Nga rruga, vërej se përfundimi i një klase me Impl është një konventë në Java, sipas së cilës zbatimi i ndërfaqeve është përcaktuar kështu (Impl - nga fjala implementim, d.m.th. zbatim). Kjo nuk është një kërkesë dhe ju jeni të lirë të emërtoni klasën si të doni, por sjelljet e mira e kërkojnë atë: paketë ru. javarush. ws; // i njëjti shënim si kur përshkruani ndërfaqen, import javax. jws. WebService; // por këtu përdoret me parametrin endpointInterface, // duke treguar emri i plotë klasa e ndërfaqes së shërbimit tonë të internetit@WebService(endpointInterface= "ru.javarush.ws.HelloWebService") klasa publike HelloWebServiceImpl zbaton HelloWebService ( @Override string publik getHelloString (emri i vargut) ( // thjesht ktheni përshëndetjen kthej "Përshëndetje, " + emri + "!" ; ) ) Le të hapim shërbimin tonë të internetit si një server i pavarur, d.m.th. pa pjesëmarrjen e ndonjë serveri Tomcat dhe aplikacioni (kjo është një temë për një diskutim të veçantë). Për ta bërë këtë, në strukturën e projektit në dosje src Le të krijojmë një paketë ru.javarush.endpoint, dhe në të do të krijojmë një klasë HelloWebServicePublisher me metodën kryesore: paketë ru. javarush. pika e fundit; // klasë për drejtimin e një serveri në internet me shërbime në internet import javax. xml. ws. Pika e fundit; // klasa e shërbimit tonë të internetit import ru. javarush. ws. HelloWebServiceImpl; klasa publike HelloWebServicePublisher ( kryesore publike statike e zbrazët (String... args) ( // filloni serverin në internet në portin 1986 // dhe në adresën e specifikuar në argumentin e parë, // filloni shërbimin e uebit të kaluar në argumentin e dytë Pika e fundit. publikoj( "http://localhost:1986/wss/hello", i ri HelloWebServiceImpl () ); ) ) Tani le ta ekzekutojmë këtë klasë duke klikuar Shift + F10. Asgjë nuk do të shfaqet në tastierë, por serveri po funksionon. Ju mund ta verifikoni këtë duke shtypur rreshtin http://localhost:1986/wss/hello?wsdl në shfletuesin tuaj. Faqja që hapet, nga njëra anë, dëshmon se ne kemi një server në internet (http://) që funksionon në portin 1986 në kompjuterin tonë (localhost) dhe, nga ana tjetër, tregon një përshkrim WSDL të shërbimit tonë të internetit. Nëse e ndaloni aplikacionin, përshkrimi do të bëhet i padisponueshëm, si dhe vetë shërbimi në internet, kështu që ne nuk do ta bëjmë këtë, por do të kalojmë në shkrimin e klientit.

Klienti

Në dosjen e projektit src Le të krijojmë një paketë ru.javarush.client, dhe në të klasën HelloWebServiceClient me metodën kryesore: paketë ru. javarush. klient; // nevojiten për të marrë përshkrimin wsdl dhe përmes tij // arrini vetë shërbimin në internet import java. neto. URL; // ky përjashtim do të ndodhë kur punoni me një objekt URL import java. neto. I keqformuarURLEpërjashtim; // klasa për të analizuar xml me përshkrimin wsdl // dhe arrini etiketën e shërbimit në të import javax. xml. hapësira e emrit. QEmri; import javax. xml. ws. Shërbimi; // ndërfaqja e shërbimit tonë të internetit (ne kemi nevojë për më shumë) import ru. javarush. ws. HelloWebService; klasa publike HelloWebServiceClient ( kryesore publike statike e zbrazët (String args) hedh MalformedURLException ( // krijoni një lidhje me përshkrimin e wsdl URL-ja e URL-së= URL e re ( "http://localhost:1986/wss/hello?wsdl") ; // Ne shikojmë parametrat e konstruktorit të ardhshëm në etiketën e parë të përshkrimit WSDL - përkufizimet // shikoni argumentin e parë në atributin targetNamespace // shikoni argumentin e dytë në atributin name QName qname = new QName ("http://ws.site/" , "HelloWebServiceImplService" ); // Tani mund të arrijmë etiketën e shërbimit në përshkrimin wsdl, Shërbimi i shërbimit = Shërbimi. krijoj (url, qname) ; // dhe pastaj deri te etiketa e portit e vendosur në të, në mënyrë që // merrni një lidhje me një objekt shërbimi ueb të largët nga ne HelloWebService përshëndetje = shërbim. getPort (HelloWebService.class); // Ura! Tani mund të telefononi metodë në distancë Sistemi. jashtë. println (përshëndetje. getHelloString ("JavaRush")); ) ) Kam dhënë komente maksimale për kodin në listë. Nuk kam asgjë për të shtuar, kështu që le të ekzekutojmë (Shift+F10). Duhet të shohim tekstin në tastierë: Përshëndetje, JavaRush! Nëse nuk e keni parë, atëherë ndoshta keni harruar të filloni shërbimin në internet.

konkluzioni

Në këtë temë u prezantua ekskursion i shkurtër te shërbimet e internetit. Edhe një herë, do të them se shumë nga ato që kam shkruar janë supozimi im se si funksionon, dhe për këtë arsye nuk duhet të më besoni shumë. Do të isha mirënjohës nëse njerëzit e ditur do të më korrigjojnë, sepse atëherë do të mësoj diçka. UPD.

WSDL (Gjuha e përshkrimit të shërbimeve në ueb) versioni 1.1 u botua më 15 mars 2001. WSDLështë një format i bazuar në XML që përdoret për të përshkruar shërbimet e ueb-it duke përdorur mesazhe që përmbajnë informacion se si të aksesoni një shërbim specifik ueb. WSDL i zgjerueshëm, i cili ju lejon të përshkruani shërbimet dhe mesazhet e tyre pavarësisht nga formatet e mesazheve ose protokollet e rrjetit që përdoren për transport, megjithatë, WSDL 1.1 përdoret më shpesh së bashku me SOAP 1.1, HTTP GET/POST dhe MIME. Sepse WSDL u zhvillua së bashku me SOAP, të njëjtët njerëz morën pjesë në zhvillimin e tij Microsoft, Ariba dhe IBM. Nëse kemi parasysh dokumentin WSDL intuitivisht, mund të themi se e lejon përgjigjuni 4 pyetjeve:

1) çfarë po bën? Përgjigja për këtë pyetje është dhënë në një formë të përshtatshme si për perceptimin njerëzor ashtu edhe për formën e perceptueshme nga makina. Përgjigja për personin në etiketa:<emri/>, <dokumentacionin/>, për makinë -<mesazh/>, <Lloji i pikës>

2) cfare gjuhe flisni? (çfarë llojesh po përdorni?) Përgjigjuni në etiketë:<llojet/>

3) si do të komunikoj me ju? (si do të hyjë klienti në shërbimin e internetit?): HTTP ose SMTP. Përgjigja qëndron në<detyruese/>

4) ku mund t'ju gjej? (ku mund ta gjej këtë shërbim në internet ose cila është URL-ja e tij?). Përgjigja është:<shërbimi/>

Struktura:

Çdo dokument WSDL mund të ndahet në tre pjesë logjike:

1. përcaktimi i llojeve të të dhënave - përcaktimi i llojit të mesazheve të dërguara dhe të marra nga shërbimi XML

2. operacionet abstrakte - lista e veprimeve që mund të kryhen me mesazhe

3. lidhjen e shërbimit - mënyra në të cilën do të dërgohet mesazhi

Dokumentacioni WSDL mund të krijohet me dorë, por gjuha është rreptësisht e zyrtarizuar WSDL ju lejon të automatizoni procesin e shkrimit WSDL- dokumente. Shumë vegla të autorizimit të shërbimeve të uebit përmbajnë programe ndihmëse që krijojnë automatikisht WSDL-skedarët që përshkruajnë shërbime të gatshme në internet. Për shembull, Vegla e Autorimit të Shërbimeve Ueb Aksi Apache përmban një klasë Java2WSDL, duke krijuar WSDL- një skedar i një klase Java ose ndërfaqe që përshkruan një shërbim Web. Paketa IBM WSTK, e cila përfshin Boshti, përmban shërbimin java2wsdl, i cili krijon dhe ekzekuton një objekt nga kjo klasë. Punon nga linja e komandës.

Elementet e dokumentit WSDL

Le të përshkruajmë etiketat WSDL më të përdorura:

Etiketë është etiketa rrënjësore e të gjitha dokumenteve WSDL. Ai përcakton disa hapësira emrash:

1) target Hapësira e emrit është hapësira e emrave të shërbimit tonë të internetit

2) xmlns – hapësira standarde e emrave të dokumentit WSDL

3)xmlns: SOAP_ENC – hapësira e emrit e përdorur për të përshkruar kodimin SOAP


4) xmlns: impl dhe intf – hapësira e emrit të zbatimit dhe përcaktimit të shërbimit tonë të internetit

· Dokumenti i Përkufizimit të Shërbimit Ueb

· Dokument për zbatimin e një shërbimi në internet

Për thjeshtësi, si rregull, ata përdorin 1 skedar që përmban të gjithë informacionin

Elementi - jep informacion për të dhënat që transferohen nga një pikë fundore në tjetrën.

Për të përshkruar një telefonatë RPC, duhet të krijoni një mesazh hyrës dhe një mesazh dalës.

Brenda këtij elementi, mund të specifikoni parametrat e metodës duke përdorur elementin

Elementi përshkruan dhe përcakton operacionet ose metodat e mbështetura nga një shërbim ueb

Operacionet mund të kenë mesazhe hyrëse si dhe mesazhe gabimi.

Elementi - përshkruan se si operacionet e specifikuara në një lloj porti do të transmetohen përmes rrjetit. Sepse elementi përdor një lloj porti, ai duhet të specifikojë një lloj të përcaktuar diku më parë në dokument.

Elementi - tregon se ku mund të gjeni shërbimin në internet

Elementi importit . Shumë shpesh elementi i shërbimit ndahet në dokumentin e tij wsdl për arsye praktike.

Për të lejuar kombinimin e disa dokumenteve wsdl në një, përdoret elementi import. Kjo ju lejon të përfshini një dokument wsdl në një tjetër.

Elementi llojet ju lejon të specifikoni llojet e të dhënave të transmetuara nëse ato nuk janë standarde.

WSDL mbështet 4 mënyra funksionimi:

· operacione njëkahëshe ose njëkahëshe. Mesazhi dërgohet në pikën përfundimtare të shërbimit. Në këtë rast, operacioni përshkruhet vetëm nga një mesazh hyrës.

· Kërkesë-Përgjigje – modaliteti kërkesë-përgjigje. Kjo mënyrë funksionimi është më e zakonshme. Në këtë modalitet, përshkrimi i funksionimit përmban një mesazh hyrës dhe dalës dhe një mesazh gabimi opsional.

· Operacioni i llojit kërkesë-përgjigje. Në këtë mënyrë, një pikë fundore është një klient i një pike tjetër fundore. Formati i funksionimit është i ngjashëm me modalitetin kërkesë-përgjigje, por të dhënat e daljes renditen përpara të dhënave hyrëse.

· Njoftimi i operimit. Ky modalitet është një version tjetër i primitivit të transmetimit njëkahësh, në të cilin pika përfundimtare dërgon mesazhin në vend që ta marrë atë. Operacioni përmban vetëm një mesazh dalës.

Parathënie

Klientët e klientëve kërkuan nga klientët skedarë xsd për strukturat e transmetuara nga shërbimet e implementuara të Uebit. Konsumatorët u përgjigjën duke ftuar klientët e klientëve të krijojnë WSDL. Se. papritmas, "nga blu", lindi nevoja për të bërë jo vetëm skema xsd për vërtetimin e të dhënave, por "të tëra WSDL". Zakonisht WSDL-të përdoren për SOAP, por ne përdorim REST...

Kam shkruar më parë për

Prezantimi

Termi shërbime ueb zakonisht shoqërohet me shërbime të bazuara në operacione ose veprime të bazuara në standardet SOAP ose WS*, si p.sh. WS-Addressing ose WS-Security. Termi shërbime REST Web zakonisht i referohet një arkitekture të bazuar në burime të shërbimeve të Uebit që komunikojnë XML mbi HTTP. Secili prej këtyre stileve arkitekturore ka vendin e vet, por deri vonë, standardi WSDL nuk i ka mbështetur të dyja këto stile. Lidhja HTTP WSDL 1.1 ishte e pamjaftueshme për të përshkruar ndërveprimin duke përdorur XML mbi HTTP, d.m.th. Nuk kishte asnjë mënyrë formale për të përshkruar shërbimet REST Web duke përdorur WSDL. Publikimi i standardit WSDL 2.0 (i cili u zhvillua duke marrë parasysh nevojën për të përshkruar shërbimet e REST Web) si një rekomandim botëror Ueb i gjerë Konsorciumi (W3C) ka ofruar një gjuhë për përshkrimin e shërbimeve REST Web.

REST është një stil arkitektonik që e trajton Ueb-in si një aplikacion me qendër burimet. Praktikisht, kjo do të thotë që çdo URL në një aplikacion RESTful përfaqëson një burim. URL-të janë të lehta për t'u kuptuar dhe mbajtur mend. Për shembull, një librari mund të përcaktojë URL-në http://www.bookstore.com/books/ për një listë të librave që shesin dhe http://www.bookstore.com/books/0321396855/ për detaje rreth një libri specifik me ISBN 0321396855. Kjo është në kontrast me aplikacionet e përqendruara te veprimet, që zakonisht kanë URL të gjata e komplekse që përshkruajnë veprimet që duhen kryer, për shembull http://www.bookstore.com/action/query?t=b&id=11117645532&qp=0321396855 . Parametrat e pyetjes përdoren për të zgjedhur të dhënat e kërkuara. Duke përdorur shembullin e librarisë, specifikimi i parametrit të temës kufizon subjektin e librit. Për shembull, fizikë ose histori detektive, ose për shembull URL http://www.bookstore.com/books/?subject=computers/eclipse - një kërkesë që kthen një listë librash rreth platformës Eclipse.

Termi REST u krijua nga Roy Fielding në tezën e tij të doktoraturës. Ai i shikonte hiperlidhjet si një mjet për të ndryshuar (ruajtur) gjendjen e një aplikacioni. Hiperlidhjet ruhen në burimet e aplikacionit dhe janë një metodë e ndryshimit të gjendjes së aplikacionit, duke ridrejtuar nga një gjendje në tjetrën. Zakonisht hiperlidhjet në (X)HTML janë të destinuara për përdorim nga njerëzit; ato nuk janë përdorur në XML, e cila ishte menduar për përpunimin e makinës. Ashtu si (X)HTML, shërbimet REST Web përdorin hiperlidhje në XML.

Aplikacionet tradicionale të uebit aksesojnë burimet duke përdorur operacionet HTTP GET ose POST. Aplikacionet RESTfull punojnë me burime në një stil "krijoni, lexoni, përditësoni dhe fshini (CRUD)" duke përdorur të plotë Aftësitë HTTP protokoll (POST, GET, PUT dhe FSHI).

Një tjetër shënim i rëndësishëm rreth aplikacioneve RESTful: Aplikacionet RESTful duhet të jenë pa shtetësi. Kjo do të thotë që një aplikacion REST nuk mban asnjë gjendje sesioni në anën e serverit. Të gjitha informacionet e nevojshme për plotësimin e kërkesës transmetohen në vetë kërkesën. (Prandaj, serveri duhet t'u përgjigjet kërkesave të përsëritura në të njëjtën mënyrë. Shënim i përkthyesit). Në përputhje me rrethanat, klienti mund të fshehë burimet e marra, gjë që mund të përshpejtojë ndjeshëm shpejtësinë e aplikacionit aty ku shërbimi e lejon në mënyrë eksplicite. Për të mësuar më shumë rreth REST, shihni lidhjet në artikull.

WSDL dhe REST

WSDL përmban të gjitha detajet në lidhje me shërbimin në internet duke përfshirë:

    URL e shërbimit në ueb
    Mekanizmat e komunikimit që i kupton shërbimi në internet
    Operacionet që mund të kryejë një shërbim ueb
    Struktura e mesazheve të shërbimit në ueb

Klientët mund të përdorin detajet e listuara për të bashkëvepruar me shërbimin.

WSDL 2.0 u shpall rekomandim i W3C në qershor 2007. Ky version i standardit WSDL u lëshua për të adresuar problemet me standardin WSDL 1.1, shumë prej të cilave u zbuluan nga organizata e Ndërveprimit të Shërbimeve të Uebit (WS-I). Përveç kësaj, WSDL 2.0 ka përmirësuar mbështetjen për lidhjet HTTP.

WSDL në vetvete është XML, një nëngrup që përshkruan zyrtarisht një shërbim në internet. Mendoni për përshkrimin WSDL të një shërbimi në internet si kontratën e tij API me klientin. WSDL specifikon adresën, metodat e pranueshme të transmetimit të informacionit, ndërfaqet dhe llojet e mesazheve të shërbimit në internet. Shkurtimisht, një përshkrim WSDL përmban të gjithë informacionin që i nevojitet një klienti për të përdorur një shërbim në internet.

Zbatueshmëria e WSDL shtrihet përtej përdorimit të tij si një kontratë API. Duke qenë një përkufizim formal, WSDL mund të përdoret nga softueri për të thjeshtuar zbatimin e shërbimeve në internet për operacione të tilla si:

  • Duke gjeneruar Kodi i burimit aplikacion klienti dhe server për ueb shërbim në gjuhë të ndryshme programimi
  • Publikimi i një shërbimi në internet
  • Testimi dinamik i shërbimit në internet

Shumica software për të punuar me shërbimet e uebit përfshijnë mbështetjen për WSDL 1.1. Kohët e fundit Numri i mjeteve të zhvillimit të shërbimeve në internet që mbështesin WSDL 2.0 po rritet. Projekti Web Apache shërbimet përbëhen nga dy nënprojekte që aktualisht mbështesin WSDL 2.0. Woden është një analizues analizues WSDL 2.0 i bazuar në Java. Projekti i shërbimeve Apache Web ofron gjithashtu një transformim XSL (XSLT) WSDL 2.0 të quajtur Printer i bukur WSDL 2.0, i cili siguron lexueshmëri më të mirë nga njeriu të dokumentit WSDL. Axis2 është një motor i popullarizuar i shërbimeve në internet (gjithashtu nga Apache) që gjeneron kodin Java të klientit dhe serverit nga një dokument WSDL 2.0.

Përshkrimi i një shërbimi në internet REST duke përdorur WSDL 2.0

Ju krijoni një librari që ka një URL të avancuar: http://www.bookstore.com. Ju keni krijuar tashmë dy shërbime REST Web:

  • listën e librave— shërbimi merr një listë të librave të shitur nga ju.
  • detajet e librit - shërbimi merr informacion për një libër specifik.

Përgjigja kthehet në dokumente XML.

Elementi ndërfaqe përcakton një listë të operacioneve të shërbimit në internet, duke përfshirë një përshkrim të mesazheve hyrëse, dalëse dhe gabimi për operacionet, si dhe renditjen e transmetimit.

Elementi detyruese përcakton mjetet e komunikimit ndërmjet klientit dhe shërbimit të internetit. Në rastin e shërbimeve të internetit REST, HTTP është specifikuar si mjet komunikimi.

Elementi i shërbimit lidh adresat e shërbimit në ueb me ndërfaqe dhe lidhje specifike. (D.m.th., ai vendos korrespondencën midis URL-së së funksionimit të shërbimit në internet dhe elementit detyruese).

Lidhni listën e librave me HTTP

Elementi detyruese specifikon lidhjen e shërbimit të internetit me një protokoll specifik të transferimit të të dhënave. Për të lidhur shërbimin e listës së librave me HTTP, duhet të specifikoni vlerën http://www.w3.org/ns/wsdl/http për atributin lloji element detyruese.

Elementi detyruese mund t'i referohet opsionalisht ndërfaqe. Lëre atributin ndërfaqe bosh. Ju do ta krijoni atë në seksioni tjetër. Nëse ndërfaqe lidhur me detyruese, Pastaj detyruese një element mund të përcaktojë opsionalisht një element fëmijë operacion, e cila është pasqyrë për funksionimi i ndërfaqes element. Ju duhet të krijoni një cung elementi operacion dhe plotësoni lidhjen për operacion më vonë pas krijimit ndërfaqe.

Ekzistojnë 4 metoda të komunikimit HTTP

  • FSHIJE

Shërbimi i listës së librave lexon kërkesën dhe funksionon në përputhje me rrethanat duke përdorur HTTP GET. Instaloni Metoda GET për elementin operativ duke përdorur atributin metodë nga hapësira e emrave WSDL 2.0 HTTP. Për të përdorur këtë atribut, fillimisht duhet të përcaktoni hapësirën e emrave http://www.w3.org/ns/wsdl/http në element përshkrim.

Shërbimi i lidhjes së listës së librave përcaktohet në listën e mëposhtme. Specifikoni tani detyruese në element pika e fundit: tns:Lista e libraveHTTPLidhja.

Shërbimi i listës së librave në librari.

Përkufizimi i funksionimit të shërbimit të listës së librave

Deri më tani keni mësuar se si të drejtoheni dhe komunikoni me lista e librave shërbim në internet. Më pas ju specifikoni operacionin e shërbimit të listës së librave, i cili përshkruan cfare shërbimi i listës së librave bën.

Pra, ju keni mësuar se si të vendosni adresën dhe të vendosni lidhjen (mënyrën e komunikimit) për shërbimin në internet. Më pas, ju duhet të vendosni një operacion shërbimi, i cili përcakton se çfarë bën shërbimi në internet i listës së librave.

Elementi i ndërfaqes dhe elementi i tij i funksionimit fëmijë përdoren për të përcaktuar operacionet e shërbimit. Në rastin e listës së librave, ju përcaktoni një veprim të vetëm, getBookList, që kthen një listë librash.

Më pas, përcaktoni tre atribute për elementin e funksionimit:

Modeli

Përdoret për të specifikuar një model mesazhesh modeli i shkëmbimit të mesazheve(PE) për operacionin. MEP përcakton sekuencën e mesazheve për një operacion dhe drejtimin e tyre. Në këtë rast, duhet të specifikoni vlerën http://www.w3.org/ns/wsdl/in-out për të treguar që shërbimi në internet merr një mesazh hyrës që kërkon një listë librash dhe dërgon një mesazh dalës duke kërkuar një listë librash. Për të mbështetur këtë eurodeputet, ju lutemi specifikoni elementet fëmijë hyrje Dhe prodhimit për element operacion. Këta elementë përdorin elementët e përshkruar në skemën XML për të përcaktuar strukturat e mesazheve. Detajet në pjesën tjetër.

Stili

Përdoret për të treguar informacion shtese Rreth punës. Specifikoni vlerën http://www.w3.org/ns/wsdl/style/iri, e cila vendos kufizime në përmbajtjen e elementeve hyrëse, si p.sh. kërkon që ai të përdorë vetëm elementë të skemës XML.

wsdlx:safe

wsdlx:safe: Nga hapësira e emrave të shtesave WSDL, ky atribut deklaron se ky operacion është idempotent. Ky lloj operacioni nuk e modifikon burimin dhe për këtë arsye mund të thirret shumë herë me të njëjtat rezultate. Për të përdorur këtë element, deklaroni hapësirën e emrave të shtesave WSDL http://www.w3.org/ns/wsdl-extensions në elementin e përshkrimit.

Ky atribut është nga hapësira e emrave të shtesave WSDL. Ajo përcakton se operacioni është idempotent. Ky operacion nuk e modifikon burimin, kështu që mund të thirret disa herë me të njëjtat rezultate. Për të përdorur këtë element, duhet të deklaroni zgjerimet WSDL të hapësirës së emrave http://www.w3.org/ns/wsdl-extensions në elementin rrënjë (elementi i përshkrimit).

Mund të gjeni modelet, stilet dhe përkufizimet wsdlx:safe të paracaktuara të shkëmbimit të mesazheve në WSDL 2.0 Pjesa 2: Shtojca

Më poshtë është përkufizimi i shërbimit të listës së librave me përshkrim të shtuar ndërfaqe. Pas shtimit të ndërfaqes, tani mund të ndryshoni elementin e funksionimit të lidhjes për të specifikuar lidhjet me ato të përshkruara ndërfaqe Dhe operacion.

Lidhja RESTful HTTP për shërbimin e listës së librave. Shërbimi i listës së librave në librari.

Përcaktimi i mesazheve të shërbimit të funksionimit të listës së librave

Shërbimi në internet i listës së librave përdor dy mesazhe: hyrje dhe dalje. Ju duhet të përshkruani strukturat e këtyre mesazheve në mënyrë që programet e klientëve të dinë se çfarë t'i dërgojnë shërbimit dhe çfarë të presin përsëri.

WSDL 2.0 mbështet sisteme të shumëfishta për përshkrimin e përmbajtjes së mesazhit, por skema XML është e vetmja në përdorim. Ky seksion nuk mbulon detajet e skemës XML. Skema XML përdoret në shumë aplikacione të tjera, si WSDL 1.1, dhe ka shumë artikuj të mirë për të. Ky seksion thekson se si të përdoret skema XML për shërbimin e uebit REST të listës së librave dhe si të përdoren atributet shtesë të përcaktuara nga WSDL 2.0 për të shënuar një atribut skeme.

WSDL 2.0 mbështet shumë sisteme përkufizimi të tipit, por në praktikë përdoret vetëm skema XML. Ky artikull nuk hyn në detaje rreth skemës XML. Skema XML përdoret në shumë aplikacione të tjera, si WSDL 1.1, dhe ka shumë artikuj të mirë rreth tij. (). Ky seksion demonstron aplikimi i XML skema në lidhje me shembull specifik REST e shërbimit të listës së librave, si dhe përdorimi i atributeve shtesë të përcaktuara në WSDL 2.0 për shënimin e atributit të skemës.

Për të përshkruar 2 mesazhe për një listë librash, duhet të përshkruani 2 elemente globale.

  • getBookList paraqet mesazhin hyrës. Ai përmban një sekuencë elementësh, duke përfshirë çdo parametër kërkese të lejuar për shërbimin: autoritet, titull, botues, subjekt Dhe gjuhe. Vetëm elementët mund të përdoren brenda mesazhit getBookList sepse stili IRI është zgjedhur për funksionimin e ndërfaqes.
  • Lista e librave paraqet mesazhin dalës. Ai përmban një sekuencë të elementeve të librit. Çdo element libri përmban nga ana tjetër atributet titull dhe url. Atributi i titullit është vetë-shpjegues. Atributi url është një lidhje me shërbimin e detajeve të librit, i cili kthen informacion të detajuar për një libër specifik.

Përkufizimi i atributit tuaj url përdor nga ana tjetër 2 atribute nga hapësira e emrave të shtesave WSDL. Atributet wsdlx:interface dhe wsdlx:binding specifikojnë ndërfaqen dhe lidhjen për shërbimin. Software mund ta përdorë këtë informacion për të gjetje automatike shërbimi. Për të përdorur këto atribute, specifikoni hapësirën e emrave të shtrirjes WSDL për elementin skema. Përfshini gjithashtu hapësirën e emrave të detajeve të librit nga përshkrimi i tij WSDL 2.0.

Skema XML për shërbimin e listës së librave është dhënë më poshtë.

Elementi i kërkesës për shërbimin e listës së librave. Elementi i përgjigjes për shërbimin e listës së librave.

Për të referuar elementet hyrëse dhe dalëse, duhet të importoni skemën në dokumentin tuaj WSDL. Për të importuar skemën, përdorni elementin e importit të skemës në seksionin e llojeve siç tregohet në listën më poshtë. Për më tepër, ju duhet të shtoni referenca për elementët getBookList dhe Booklist në elementet hyrëse dhe dalëse të operacionit të ndërfaqes dhe të shtoni hapësirat e emrave të skemës XML të listës së librave në elementin rrënjë WSDL.

WSDL gati për shërbimin në internet të listës së librave.

Ky është një përshkrim WSDL 2.0 i një listimi shembull shërbimi të librarive për marrjen e informacionit të librit. Ky operacion kthen një listë librash. Lidhja RESTful HTTP për shërbimin e listës së librave. Shërbimi i listës së librave në librari.

Shënim i përkthyesit

Mora guximin të mos përkthej përmbledhjen dhe lidhjet. Shihni autorin për të dyja. në artikullin origjinal. Duhet të them që gjuha origjinale është shumë e vështirë. Sidoqoftë, shpresoj se artikulli do të jetë i dobishëm.

Në këtë artikull do të flas se çfarë është një skedar WSDL, pse është i nevojshëm dhe si të punohet me të.

Harta e artikullit

Çfarë është WSDL

WSDL është një gjuhë përshkrimi e shërbimit në internet që ka një strukturë XML. Qëllimi kryesor i një skedari WSDL është si një ndërfaqe për aksesin në funksionet e shërbimit dhe kthimin e llojeve të të dhënave; rrugën drejt serverit që përpunon kërkesat, etj.

Rruga drejt skedarit wsdl zakonisht duket si http://host/services/wsdl/gbdar-v2-2.wsdl

Ka shumë mjete, biblioteka të krijuara për të lexuar një skedar WSDL.

SapunUi

Një mjet i tillë është soapUi(). Pasi të keni instaluar shpërndarjen e krijuar për platformën tuaj, mund të krijoni një projekt të ri duke përdorur komandën e projektit File/New SoapUi. Në dialogun për krijimin e një projekti të ri, lini të aktivizuar kutinë e kontrollit Krijoni kërkesat e mostrës

Ekzekutimi i pyetjeve

Në projektin e ri, shabllonet e kërkesave do të krijohen automatikisht për shërbimin, përshkrimi i të cilit gjendet në skedarin wsdl. Në të majtë në pemë do të shihni një listë të funksioneve të përfshira në skedarin WSDL. Unë do të ekspozoj funksionin e Replikimit. Brenda saj ka një kërkesë Kërkesë1, duke klikuar dy herë mbi të cilën do të shohim një dialog me një shabllon kërkese, në vend të parametrave të paracaktuar do të ketë pikëpyetje. Që funksioni të ekzekutohet saktë, duhet të plotësoni të gjithë parametrat që nuk janë shënuar me etiketën Opsionale dhe më pas të klikoni trekëndëshin e gjelbër në këndin e sipërm të majtë të dialogut.

Nëse të gjithë parametrat janë specifikuar saktë, përgjigja e shërbimit ndaj kërkesës do të shfaqet në të djathtë.

SoapUi ofron mundësinë për të parë parametrat e një skedari WSDL; për ta bërë këtë, duhet të klikoni dy herë në emrin e ndërfaqes (të shënuar me një ikonë të gjelbër në pemën e skedarit WSDL, për mua - gdbar-v2-2SOAP). Në dialog mund të gjeni:

  • Skeda "Përmbledhje". — përshkrimi i parametrave të përgjithshëm WSDL, lista e funksioneve dhe veprimet shoqëruese të serverit
  • Tab - rruga për në server dhe parametra të tjerë
  • Përmbajtja WSDL - pema e navigimit të skedarëve
  • Pajtueshmëria WS-I — këtu mund të krijoni një raport WS-I mbi ndërfaqen

Gjenerimi i dokumentacionit

SoapUi na lejon të gjenerojmë dokumentacionin e funksionit WSDL. Për ta bërë këtë, klikoni me të djathtën në ndërfaqe dhe thirrni komandën Krijo dokumentacion. Si rezultat, ne do të marrim një manual të detajuar në formatin html.

Kjo është e gjitha, abonohuni në postime të reja, lini komente, bëni sugjerime për përmirësimin e artikullit.

Artikujt më të mirë mbi këtë temë