RSS
 

Ruby und Webservices

Veröffentlicht am Januar 4, 2008 um 9:42 pm

04 Jan

So, jetzt hab ich mir mal ein wenig das Thema Webservices unter Ruby angeschaut.
Als erstes ist mal zu sagen, SOAP wird unter Ruby on Rails nicht mehr unterstützt, nur noch REST.

Für Ruby ansich gibt es aber eine scheinbar recht gute SOAP implementation. Diese nennt sich SOAP4R, wer den GEM Manager installiert hat (ist bei OSX normal standard) kann mittels folgendem Kommandozeilenbefehl sich die aktuellste Version installieren:
sudo gem install soap4r --include-dependencies

Jetzt kann man sich komplett Ruby funktionen parralel zur WSDL Datei aufbauen. Dies ist natürlich mit erheblichem aufwand verbunden. Daher gibt es ein nettes Kommandozeilentool das einem automatisch Rubyklassen passend zur WSDL Datei erstellt.
Mit folgendem befehl kann man sich die klassen erstellen lassen:
/usr/bin/wsdl2ruby.rb --wsdl /PfadOderUrlZurWSDL/beispiel.xml --type client

Dadurch erstellt Ruby alle Klassen die man für ein Client benötigt.

Mittels folgendem befehl lässt sich natürlich auch ein Server passend zur WSDL erstellen:
/usr/bin/wsdl2ruby.rb --wsdl /PfadOderUrlZurWSDL/beispiel.xml --type server

Das alles hab ich bei mir bisher geschafft. Mal sehen wie man das ganze erzeugte jetzt benutzt.
Ein nettes tutorial findet man übrigens hier:

http://markthomas.org/2007/09/12/getting-started-with-soap4r/

 

Tags:

Hinterlassen Sie eine Nachricht