soap


SOAP - Simple Object Access Protocol

SOAP je komunikačný protokol a formát kódovania využívaný na komunikáciu medzi aplikáciami. Je založený na báze XML. Na výmenu správ používa zvyčajne HTTP. Je nezávislý na platforme a na programovacom jazyku.

Umožňuje vzdialené volanie metód, objektov a všeličoho iného, čo môže zverejniť server. Komunikácia medzi dvoma SOAP systémamy prebieha formou XML správ. Tieto správy obsahujú jeden alebo viac SOAP elementov, hlavičky a telo, to všetko uzavreté v tzv. obálke - envelope. Existujú 2 syntaxy na popis dát v týchto elementoch. Starší XML RPC systém, a novší XML Schema.

SOAP je považovaný za základ novej generácie distribuovaných aplikácií, nezávislých na platforme a jazyku, ktorým sa hovorí webové služby - Web Services. Je protokolom, pomocou ktorého jednotlivé webové služby medzi sebou komunikujú.

V tomto čase existuje už dostatočne veľa implementácií SOAP, a to najme pre jazyky orientované na sieťovú komunikáciu, napr. sú to SOAP:Lite pre Perl, Apache Axis a Apache SOAP 2 pre Java, taktiež sú implementácie pre C#, Delphi, VB, atď. Pre nás bude hlavne zaujímavá implementácia Apache Axis. Je to nová technológia, ktorá nahradzuje svojho predchodcu Apache.


Inštalácia

Popis inštalácie SOAP

  1. Stiahnite si poslednú verziu Axis z vyššie uvedenej adresy. Súbor je zabalený pomocou ZIPu. Rozbaľte celú adresárovú štruktúru.
  2. V stromovej štruktúre rozbaleného súboru nájdite adresár s názvom "/webapps/". Tento adresár by mal obsahovať jediný ďalší adresár "/axis/". Tento adresár je potrebné skopírovať do adresára "/webapps/" Vášho nainštalovaného jsp/servlet servera (napr. Tomcat 4).
  3. Po skopírovaní je potrebné reštartovať bežiaci jsp/servlet server.
  4. Skontrolovať bežiaci Axis je možné v internetovom prehliadači. Napíšte: http://localhost:8080/axis/. Ak sa v prehliadači zobrazila stránka s nádpisom "Apache-AXIS", prvá časť inštalácie je dokončená.
  5. Stlačte na odkaz s nadpisom Validate. Spustí sa JSP aplikácia, ktorá skontroluje prítomnosť .jar knižníc, ktoré je potrebné sprístupniť, aby Axis bežal správne. Pod nadpisom Needed Components sa objavia názvy chýbajúcich knižníc. Príslušné knižnice je potrebné skopírovať z adresára "/lib/" do adresára, v ktorom ich jsp server hľadá. Napr. pre Tomcat je to adresár "/common/lib/". Ak Axis stále hlási chýbajúce povinné knižnice, vyhľadate ich v JDK a skopírujte do toho istého adresára.
  6. Reštartujte jsp server.

pomoc


Registrácia služieb na servri

K registrácii služieb sú určené súbory s príponou .dd, resp. wsdd (web services deployment descriptor). Popisujú ako sa má služba správne zaregistrovať na servri. Informujú o službe a o javovskej triede, ktorá ju implementuje. Väčšinou sa tieto súbory nazývajú deploy.wsdd.
Ak nepoužívame žiadne vývojové prostredia, tak tento súbor musíme vyrobiť ručne. Jednoduchšie je nechať to na napr. JBuilder, ktorý ho vyrobí automaticky. Následne treba použiť tento súbor pre registráciu na servri:

%java org.apache.axis.client.AdminClient deploy.wsdd
Služby nie je potrebné registrovať, ak sú implementované v jave a uložené v súbore s príponou .jws

Príklady

1. Ahoj Service

2. Webová kalkulačka - príklad nezávislosti na jazyku


Linky